Update notes immediately after closing/reopening
## What does this MR do?
Fixes MR https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4127 Thanks @bendyorke!
## Are there points in the code the reviewer needs to double check?
Nope.
## Why was this MR needed?
Constant conflicts in that MR
## What are the relevant issue numbers?
## Screenshots (if relevant)
Fixes#15091
See merge request !4323
Fixed potential issue with 2 ci status polling events happening
Possible cause for double notifications was if the request was slow & then you changed page whilst this request was happening it would finish on another page & then launch another interval - this stops that issue.
Also passed in the CI status as an option value rather than waiting for the first ajax request to finish
See merge request !3869
Loads move issue dropdown async
To keep the style of the dropdown the same as the other dropdowns in the issue form, it uses select2 rather than our new dropdowns.

Closes#16563
See merge request !4160
Fixed JS error when trying to remove discussion form
## What does this MR do?
Fixes a JS error which was caused by an ID of the form not matching what was returned by the JSON. Instead of checking that, it gets the current form from the ajax success event.
This would only happen on outdated discussions because the ID of the discussion form ends with `-false` because it isn't active. However, the note is added to an active discussion so the ID returned actually ends in `-true` & therefore the JS couldn't find the correct form.
## What are the relevant issue numbers?
Closes#17778
See merge request !4303
POC: Updated contrib calendar
In an effort to cut down the JS file size - i've removed the heatmap calendar used for the contributing calendar on users profiles. We already have d3 on the page so why not use it instead of using a library which uses it?

cc. @jschatz1
See merge request !3944
Issuable filtering improvements
This improves the filtering of issues and merge requests by creating a single file that encapsulates all the filtering. Previously this was done with a file for issues and a file for merge requests.
Created the ability for the text search to be done alongside other filterables. Previously because this was outside the filterable form, this wasn't possible and would instead do either filter dropdown or text filter - not both. Fixes#4252
Fixed issue with not being able to filter and sort issues without refreshing the page. Fixes#15269
See merge request !3699
Fixed issue with button color when no CI enabled
## What does this MR do?
Fixes an issue with the color of the merge button when no CI is setup.
## What are the relevant issue numbers?
Closes#17844
## Screenshots

See merge request !4287
Fix concurrent request when updating build log in browser
If you have a slow internet connection the trace will not be updated correctly. We need to check if our request is the latest one.
Fixes: https://gitlab.com/gitlab-org/gitlab-ce/issues/17535
See merge request !4183
Clicking changes tab scrolls the window to show the content
When you click on the changes tab in a merge request, it will now scroll the window down to the content.

Closes#15133
See merge request !4192
Issuable form due date
For some reason, this was never in the original merge request for due date?

Closes#15516
See merge request !3895
Fixed issue with enter key selecting wrong option in dropdown
If you search for a label and press enter the dropdown will select the last element rather than the first. This is because the currentIndex is -1 rather than 0

Closes#17630
See merge request !4210
Fixed issue with merge button color

Closes#17644
See merge request !4211
If you search for a label and press enter the dropdown will select the last element rather than the first. This is because the currentIndex is -1 rather than 0
Closes#17630