[comment addon] Fix bug in uncommenting line-commented blocks

(http://stackoverflow.com/questions/16702574/codemirror-comment-js-addon-wont-uncomment-in-ruby-mode)
[xml mode] Make else indentation style correspond to rest of project
[xml-hint addon] Rewrite from scratch

Using some of the ideas from the html5 hinter. Can now
use a much richer source of hinting information, and also
completes properties and property values.
[html-hint addon] Rewrite to reuse xml-hint instead of own hinting function
Work around IE bug where drag events get fired twice

Closes #1551
[javascript mode] More comma-handling tweaks

Issue #1443
[xml-hint demo] Fix minor bug, add sponsor link
[xml-hint addon] Properly support single-quoted attributes
Remove setDragImage call for Safari (again)

Issue #332
[xml-hint demo] Disable implicit completion on single candidate

When implicitly activating completion, it is undesirable.
Fix partial-updating of lines with line widgets above them

Issue #1554
Reset scrollbarwidth cache when window is resized

Zooming can produce different measurements.
forgive one pixel in scrollbars

Sometimes I find that CodeMirror adds scrollbars inappropriately (most often due to browser zoom).
Digging around suggested that it is some non-integers resulting in rounding up the measured size,
and I haven't been able to find a case where the two values differ by more than one pixel, so simply setting the threshold one pixel higher seems to address the issue.

This PR forgives one pixel in the size comparison before drawing the scrollbars.
Add handleMouseEvents option to markText and addLineWidget
Take top padding into account in "local" coordinate space, fix bug in fromCoordSystem

Issue #1557
Add a lineAtHeight method

Issue #1556
[vim keymap] Fix reliance on bug in coordsChar
[closebrackets addon] Add 'explode' feature

Issue #1552
[show-hint addon] More complete documentation
[show-hint addon] Make sure to clear state.completionActive when no match is found