Correct regression error in ScalaCodeScanner

After refactoring the ScalaCodeScanner I discarded all white space
token because I thought it is an optimization (they must never
be colored). The offset error now occurres because of another
optimization that is done in a component built-in in Eclipse:
org.eclipse.jface.text.rules.DefaultDamagerRepairer. Whenever this
component detects style ranges of the same type that are consecutive,
only the first style range is applied and then expanded for all
following ranges. Because white space token are omitted it can be that
a color range is expanded although it is not allowed.

To correct the behavior white space token are not discarded anymore.

Fix #1001481
Merge pull request #293 from sschaef/issue/scala-code-scanner

Correct regression error in ScalaCodeScanner
Remove `Xmigration28` setting.

Fixed build for 2.10.1-SNAPSHOT.
Bump version number to 3.0.0-SNAPSHOT.

Once we bump the version, I can branch for release/3.0.x.

I removed some versioned dependencies between our own core plugins (sdt.debug
to sdt.core, sdt.spy to sdt.core), as I think they are not needed and are just
a pain to maintain.
Adds anon function and flags in cache

Creates an new map cache to store information about method containing the code
of anonymous functions, and method flags.
With tests.

Fixes #1001001
Merge pull request #295 from dragos/set-versions

Bump version number to 3.0.0-SNAPSHOT.
Merge pull request #296 from skyluc/issue/debugger-cached-method-flags-1001001

Adds anon function and flags in cache
Debugger code does not handle checked exceptions in many places

I've added a number of FIXMEs notes in the debugger codebase where checked
exceptions are not handled.

Furthermore, I've added a couple of comments that should help better understanding
some of the assumptions we have in the debugger module (this is related to the discussions
that happened in the [PR #219](https://github.com/scala-ide/scala-ide/pull/219))

Re #1001487
Merge pull request #294 from dotta/issue/unhandled-checked-exceptions-1001487

Debugger code does not handle checked exceptions in many places
Rebuild Scala projects after a global compiler settings change.

If the user changes compiler settings on the Scala Preferences page, all Scala
projects that 'inherit' these settings should be rebuild. The existing logic
was dealing only with the case where *project-specific* settings were changed.

Fixed #1001460.
Merge pull request #290 from dragos/issue/settings-refresh-build-1001460

Rebuild Scala projects after a global compiler settings change.
Update remaining <parent> references to the new version number.(cherry picked from commit 07599c7a1693a6df2beb227fd243ab1c41db3ef8)
This time, the "last" vestige of the 2.1.0 version number.
Add checks if the underlying project closed/not exists

There are scenarios, where project depends on other, closed projects -
this happens with IvyDE, which adds even closed projects to the dependency
list (of course, in that case, the generated jars added as well), but
these closed projects cause build failures for ScalaIDE, because it
doesn't expects that the underlying IJavaProject could throw exceptions.
So the general fix is to add checks before calling the critical methods,
and a catch block with logging.
 This fixes #1001465
Merge pull request #297 from gzsombor/handle-exceptions-with-closed-projects

Add checks if the underlying project closed/not exists, and catch JavaMo...
Attempt to fix spurious errors in the PC test suite.