Focus the window when the editor is clicked

Prevents issue where the cursor blinks but an iframe is focused,
so typing doesn't end up in the editor.
[dialog addon] Add kludge for IE focus bug

Issue #2191
Revert attempt to fix issue #1196 by keeping text in textarea

The Android virtual keyboard is apparently not looking
at that (at least not in a sane way).
[markdown mode] Rename `header2` -> `header-2`

and `formatting-header4` -> `formatting-header-4` for consistency.
[julia mode] Various improvements
[closebrackets addon] Fix regression introducedy multi-cursor support

Closes #2205
[vim] fix Ctrl-[ (escape) shortcut for visual mode
Add support for undoing/redoing selection
Add a findMarks method

Closes #2200
Fix charWidth to give accurate, fractional result
Optimize countColumn and findColumn
[test driver] Sanitize skipping tests
Make alt-drag deal properly with tabs
use correct classes for headers

The header classes for specific levels of headers, which should set the size of each header did not match the classes in the editor. This commit fixes that.
[show-hint addon] Don't cover cursor when taking up full screen height

Closes #2213
expose full completion data to extraKeys in show hints.
Fix highlightWorker to actually perform work

Closes #2211
Fix another case of bootstrap blues

(Border-sizing on the CodeMirror-linenumber class)

Issue #2210
[runmode addon] Fixed resolveMode in runmode.node

This fix has been modelled after the getMode function in runmode.node in
v3.20.0
Documentation pass, part 1 (up to updateDisplay)