Move Semantic highlighting to a background job.

Fixed #1001016.
Semantic highlighting jobs are now exclusive: a new semantic highlighting job will cancel the old ones before
being scheduled itself. This ensures proper ordering.
Small refactoring in the hyperlinking code:

- removed the abstract classes for Implicit and Declaration hyperlink factories, and 
created a simpler factory method that sets the `text` of the hyperlink
- added documentation on `HyperlinkFactory`
- moved some object declarations so that they're reused between method calls
Made implicit hyperlinks lazy. This saves a lot of time when editing large files. There
is no need to compute the target of an implicit hyperlink before the user tries to hyperlink to it, 
since this leads to lots of files being loaded in the background.

Also fixed the length of the selection when following a hyperlink (using the target name length, instead of the
source word length, which is usually not the same for implicits).
Don't show Source Generation and Externalize (String) groups in editor menu

Disabled Java specific actions for Source Generation and Externalizing String.
These actions were displayed in the editor's context menu, under the Source menu item.

Created an enhancement ticket (Re #1001018).

Fixed #1000972
Merge pull request #105 from dotta/issue/disable-getter-setter-generation-1000972

Don't show Source Generation and Externalize (String) groups in editor menu
Bumped the Sbt version to the next one that's working with 2.10.
Support string interpolation literals and macro keywords in partitioner / syntax colouring. Fixed #1001012.
Updated Equinoxe Weaving Hook version in core.tests and debug.tests POMs

When we updated the AJDT p2 repository we use to build the IDE (SHA:
a50171ac28e5de9f2c39280d0f106361f3f4360a), we forgot to also change the
Equinoxe Weaving Hook version number that is hardcoded in both core.tests and
debug.tests POMs.

We didn't notice this up until now simply because the old Equinoxe Weaving Hook
was cached by maven in the local .m2 repository. Indeed, the build did start to
fail after the maven local cache was deleted.
Correctly expose to JDT Scala sources' throws annotations

Scala @throws annotation were not exposed to JDT up until now, which was
causing wrong errors to be reported by the Scala presentation compiler.

Fix #1001005, #1000707 and #1000800
Merge pull request #104 from dotta/issue/expose-throws-ann-to-java-1001005

Correctly expose to JDT Scala sources' throws annotations
Fixed deprecation warnings for things that are deprecated since 2.9.0 and may be removed in 2.10.
Merge branch 'master' of github.com:scala-ide/scala-ide
Merge pull request #107 from dragos/issue/implicit-hyperlinks-too-eager

Implicit hyperlinks should not resolve target eagarly
A couple more deprecation warnings removed, this time from tests.
Merge branch 'master' of github.com:scala-ide/scala-ide
Merge pull request #103 from dragos/issue/semantic-highlighting-background-1001016

Move Semantic highlighting to a background job.
Merge pull request #108 from JamesEarlDouglas/master

Fix typo: "paramters"
Adding test classes to regression suite

Unfortunately, it looks like we have forgot to add a few test classes to the
regression suite. Now all tests in ``ScalaJavaDepTest.scala`` are failing when
building the IDE for Scala 2.9.

Furthermore, it looks like tests are not run when building the IDE for Scala
2.10 (and manually running the regression suite against 2.10 currently results
in 21 test failures. aaaargh!).
Fixed build

The test class that contains the failing tests is
``ScalaJavaCompletionTests.scala``, and not ``ScalaJavaDepTest.scala`` which
was commented out in the previous commit SHA:
6a9b1ae6596a48a9b9f9968b1adacd31d3524ab9