Add option to highlight all words matching the current selection

(not ready to merge!)
I'm having quite a bit of trouble with this section here - the delay is causing strange behaviour, sometimes (very inconsistently) it breaks syntax highlighting in weird ways instead of working as intended.

http://imgur.com/Wc7KLJ2

When calling `HighlightWordsMatchingSelected()` directly in this function, things work fine. However, there needs to be a delay of ~ 1 second before the highlighting is applied for it to be not as annoying / distracting.

I've also tried a `System.Timers.Timer`, but I got the same behaviour with that one. Is there anything obvious I'm missing?