Auto delete closing character literal

Fixes #1001600
Auto delete closing string literal

Fixes #1001583
deletion of unnecessary method
Add a quick fix to create a new class

This quick fix is available for any error that would have caused us to attempt an import completion quick fix.

Get rid of some duplication in the current quick fixes which define a set of 6 methods (getRelevance, getDisplayString, etc) with the trait BasicCompletionProposal.

I have also added an option to the AbstractNewElementWizardPage to put the created file in a folder that differs from the package, which is allowed in scala but not in java. The main motivation for this is so that using the new class quick fix will put the created class in the same directory as the class you were attempting to use the missing class from. This only applies when your code is in a folder that doesn't match the package, otherwise we default to the java convention of using a folder path that matches the package name.
It would be a little bit nicer to have the folder displayed as "com/some/thing" rather than "com.some.thing", but it turns out to be a lot of work: you would have to create a new CompletionProcessor to replace JavaPackageCompletionProcessor, make the UI for it to replace what comes with NewTypeWizard.choosePackage, set up the key binding so that autocompletion kicks in on '/' rather than '.', and the easy part of replacing '/' (or File.separatorChar) with '.' and coercing it in to an IPackageFragment when we need it.

Fixed source formatting of QuickFixesTests, and moved the actual test to a separate file. With the exception of renaming withQuickFixes to withManyQuickFixesPerLine, none of that code was changed, only the formatting.

Fix #1000809, Re #1000898
Fixe typo in debug page.

Fixes #1001640.
Remove Eclipse IDE 3.6 (Helios) from the jdt.core compatible range.

Fixes #1001637.
Merge pull request #366 from huitseeker/typofixing

Fixes a couple of minor code hygiene issues.
Merge pull request #364 from dnadolny/new-class-quick-fix-1000809

Add a quick fix to create a new class
Merge pull request #354 from sschaef/issue/auto-closing-literals

Issue/auto closing literals
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.
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