Upgraded jQuery to version 2
## What does this MR do?
Upgrades jQuery to 2.2.1.
Had to include the task_list JS file directly as it includes jQuery 1 directly https://github.com/github-archive/task_list/blob/master/app/assets/javascripts/task_list.coffee#L8 so when we change jQuery to `jquery2` it was including both jQuery 1 & 2.
## Are there points in the code the reviewer needs to double check?
For any JS errors
## What are the relevant issue numbers?
Closes#12440
See merge request !4384
- Move the `TwoFactorAuthsController`'s `new` action to `show`, since
the page is not used to create a single "two factor auth" anymore. We
can have a single 2FA authenticator app, along with any number of U2F
devices, in any combination, so the page will be accessed after the
first "two factor auth" is created.
- Add the `u2f` javascript library, which provides an API to the
browser's U2F implementation.
- Add tests for the JS components
Clicking search pill focuses field
When clicking the pill in the search field, it now focus the field. Previously you would have to make sure you click in the field.
Fixed an issue where clicking out of the field wouldn't remove the focus
outline
Also reduced some of the HTML to remove what isn't needed
See merge request !4279
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