Added key binding for "Open Implicit" action (ALT+F3)

* Added key binding for "Open Implicit" action (ALT+F3).

* Added "Open Implicit" menu item to the top bar Navigation menu.

* Added "Open Implicit" menu item in the contextual menu (displayed after righ clicking on the editor).

* Clean-up of hyperlinks detection strategies, which are now splitted
into ``DeclarationHyperlinkDetector`` and ``ImplicitHyperlinkDetector``.

Integrated Iulian's suggestions from pull #97

Improvements related to ticket #1001002
Updated pom to use the dev AJDT streaming

The (in-)famous ``ConcurrentModificationException`` that often occurs
when running our build on the Continuos Integration server may be fixed
by moving to the SNAPSHOT version of AJDT.

This was suggested by Andrew Eisenberg here:

	https://bugs.eclipse.org/bugs/show_bug.cgi?id=338033

Test #1000941

For the Juno build we should use the following update site

	http://download.eclipse.org/tools/ajdt/42/dev/update/
Added IIndexedValue support for arrays in debugger

Extending the IIndexedValue interface allow to get the free support
for large containers.
If needed, the elements of arrays are grouped by 100, 10000, 1000000, ...

Fix #1001009
Added test for ticket #1001014

The test is currently ignored, it should be enabled once #1001014 is fixed.
Fixed Hyperlinking in classfiles regression

CMD+hover on classfiles wasn't working anymore after the recent addition of the
``Hyperlink to Implicit`` functionality.

The reason was that ``Hyperklink to Implicit`` currently needs to go through
the editor's annotation model to know if an implicit conversion is getting
applied. Apparently, the ``IEditorInput`` of a ``ScalaClassFile`` (which is an
``InternalClassFileEditorInput``) does not have an ``IAnnotationModel`` attached
to it, and that caused the ``ImplicitHyperlinkDetector`` to throw an exception,
which was the reason why CMD+hover was no longer working properly.

The fix was simple enough. In ``EditorUtils.getAnnotationsAtOffset`` returns now
an empty ``Iterator`` if the editor's annotation model is ``null``.
Corrected implementation of ``HyperlinkOpenAction#isEnabled``

The implementation of ``HyperlinkOpenAction#isEnabled`` introduced in commit
457bd3163c0b8ad28d01cf22ae619b6483c65313 is broken, and the context menu does
not always show the menu item ``Open Declaration`` when right clicking on a
binding.

Fixed by passing the ``editor`` instead of the ``editor.getViewer``.
Implemented enable/disable of "Open Implicit" menu item
Added FIXME note on ``EditorUtils``

``scala.tools.eclipse.refactoring.EditorHelpers`` and
``scala.tools.eclipse.util.EditorUtils`` should be merged.
Refactoring ``HyperlinkOpenAction``

After a discussing with @skyluc, I've extracted a ``OpenHyperlinkStrategy``
trait that contains the commong logic used by both ``HyperlinkOpenAction`` and
``OpenImplicitCommand``.
Keep "Open Implicit" and "Open Declaration" menu items always enabled

Unfortunately, it looks like there is a bug in Eclipse that prevents menu items
to be correctly refreshed in the top menu bar, inside the ``Navigation`` menu.

Hence, to avoid to confuse the user, the menu items are now always enabled.
Use the configured JDK when instantiating the presentation compiler.

The Scala compiler adds the currently running JDK to the class path, taking precedence over the JDK
configured in the build path. This commit fixed #1000820, and generalizes the scheme used by the Sbt
builder.
Make `stopBuildOnError` on by default.
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
Bumped the Sbt version to the next one that's working with 2.10.
Fixed deprecation warnings for things that are deprecated since 2.9.0 and may be removed in 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
A couple more deprecation warnings removed, this time from tests.
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