Resolve "Tooltip for pinning sidebar"
## What does this MR do?
Adds tooltip to show whether sidebar is pinned/unpinned
## What are the relevant issue numbers?
Closes#18743
## Screenshots (if relevant)


See merge request !4759
Set path for pinned nav cookie
## What does this MR do?
Sets a path for the pinned nav cookie so it will be present across page reload.
Closes#18836
See merge request !4784
Pinned sidebar navigation option
## What does this MR do?
Gives the ability to pin the sidebar navigation. Pinning is only possible on screens with above `lg` which is `1200px` if not it reverts to being hidden by default.
## What are the relevant issue numbers?
Closes#18542
## Screenshots (if relevant)
### Un-pinned

### Pinned

See merge request !4683
Replace raphael-rails with raphael.js and split it from the rest of the JS
## What does this MR do?
Removes raphael.js and its related libraries from the default JS bundle.
It also removes raphael-rails because the gem is unmaintained and – for whatever reason – didn't want to cooperate with the way I was trying to require it.
This brings the default (compressed and minified) application.js from 354KB after the d3 MR (!4394) down to 324KB.
## Are there points in the code the reviewer needs to double check?
That tests pass and that there aren't errors on any pages (especially the Network page).
## Why was this MR needed?
It's only used on the Network page and was using way too much bandwidth for just one page.
## What are the relevant issue numbers?
#14372#13165
Follow-up to !4394 and !4516.
cc: @jschatz1
See merge request !4519
Only load Chart.js when necessary.
Only load Chart.js where it's used, namely the Graphs section. Follow up on !4394.
cc: @jschatz1
See merge request !4516
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
The Bootstrap carousel module is used for image carousels, and we don't
use it anywhere on the site. Also separated the Bootstrap JavaScript into separate components and removed the carousel component.
Fixes#14670.
Crop avatars on the client before upload
<img src="/uploads/535d69956cc5904870ae5d95132a35af/Screen_Shot_2016-03-17_at_9.55.56_AM.png" width="700">
closes#7959closes#600
See merge request !3270