Defer most Quick View processing until after delay

This is for #6538. This uses the `getHoveredEditor()` function from @SAPlayer's pull request #6571, so this is a replacement of that PR.

**Details:**
* only processes mousemove event in `requestAnimationFrame()`
* defers all processing until after `setTimeout()` delay
* **exception:** when Quick View is already being displayed, then processing is immediate

**Results:**
I did some simple profiling on Win7 using the src/extensions/default/QuickView/unittest-files/test.css file and Process Explorer. I moved mouse over the css rules in that  file at an even pace -- so that only mouse processing was executed (i.e. didn't stop long enough to display Quick View).
* **Before:** cpu averages **~2%**
* **After:** cpu averages **~1%**

**cc:** @peterflynn, @dangoor  

**Note:** this is a squashed version of PR #6697 (which was used for testing a Travis problem, so had several unnecessary commits)

@redmunds Found one minor issue, a variant of #5102:

1. Place a color, etc. as the very last thing on a line (no ';' or other chars after it)
2. Mouse over it so you get a popover
3. Move the mouse to the right, past the end of the line

Result: popover stays visible even though mouse is now far away from the popover's highlighted text

So I think this section needs a copy of that "if mouse is past last char on line" check from above too.  Should probably go inside this `if` since it's the less common of the cases?