extract highlighting logic to CodeAgingHighlighter
color by line 'generation' rather than age

So that there's no meaning to absolute time, just code iterations
do nothing if no editor exists

Prevents plugin crash on non-code files or while the IDE is still
booting.
highlight with colors that match current editor theme