Add highlighting for variables in interpolated strings

We pull the identifiers in `StringInterpolation` from SyntacticInfo, and then
use the SymbolInfo in HighlightingStyle.

The syntax preview can now render deprecated methods with strike-through.
Previously we were building a map of identifier to SyntaxClass and eventually
having it build the style from the SyntaxClass, but in real usage the
HighlightingStyle class does that using Position (and has logic for adding
strikethrough). Now we essentially build a Map of identifier to Position and we
call HighlightingStyle.

This also fixes deprecated method strike-through not being enabled unless
semantic highlighting was enabled for methods (half of ticket #1001584). In
TextPresentationEditorHighlighter we were only calling HighlightingStyle.style
if styling was enabled for that kind of token. Now we call it if the styling was
enabled or if the position says it should be styled, which is true when it is
either marked `deprecated` or `inInterpolatedString`, and HighlightingStyle will
do the right thing whether the style is enabled or not.

SyntaxColouringPreviewText uses a unicode trick to get different coloring for
the variables that are in interpolated strings. Variables that should show up as
in interpolated strings have a different name that looks the same, by using the
"Cyrillic lowercase a" in place of a normal "a". It looks the same, but is a
different character, so the Map[String, ColouringInfo] works. It would be nice
to not specify any of this at all and just compile the code and use normal
highlighting, but it would require having a scala project, compiler, etc all set
up just for previewing.

Fix #1001574, Fix #1001593
Corrections and improvements from code reviews

The name has been changed to "Identifier in interpolated string" since now all
identifiers, including methods, are styled. This is important because writing
s"$method" is valid and should be styled.

We also need to listen for property change events which happen when a user
changes their preferences, so that the editor can be updated.
Add a "create method" quickfix
Fix whitespace change
Dropped 2.8 compatibility.
- remove longstanding workaround for 2.8

- removed 2.8 compatibility method

- removed irrelevant 2.8 compatibility comment

- dropped two compatibility members for 2.8 in Annotations trait
Merge pull request #368 from huitseeker/issue/drop-2.8

Dropped 2.8 compatibility.
Drops some 2.9 deprecations
Enacts the move of Definitions to rootMirror
Merge pull request #371 from huitseeker/drop2.9_and_test_jenkins

Drop some old 2.9 namespaces and deprecations Test the jenkins pr-validator doing so
Removed the extra source folder in sdt.core that allowed master to compile with
both Scala 2.9 and Scala 2.10

Fix #1001674
Correct link in "Run Setup Diagnostics" Dialog

Fixes #1001673
Merge pull request #374 from sschaef/t1001673

Correct link in "Run Setup Diagnostics" Dialog
Merge pull request #356 from dnadolny/interpolated-string-variable-highlighting-1001574

Add highlighting for variables in interpolated strings
Merge pull request #373 from dotta/issue/remove-extra-src-folder-1001674

Removed the extra source folder in sdt.core
JVMUtil went away, workaround that.
Removed the Refined build manager.

Fixes #1001422
Removed exit code mangling, some more output.
Pass default incremental compiler options.
Adapting implicit in predef test following deprecation of implicit test method any2Arrow
Removed remaining @serializable (deprecated in 2.8->2.9)