Issue406

this appears to fix issue #406 on my machine. 

the main change is to move the highlighting to only be done when 'reload' is false inside the compile section of MainWindow

There is also a refactor to move the highlighter code more into 'editor' and integrate it into QTs signalling system instead of using plain method calls.