Fix #1001330 - Race condition in ``ScalaDeclarationHyperlinkComputer``

It turns out that calling ``Tree.toString`` outside of the Presentation
Compiler Thread can trigger lazy evaluation of Tree's members, which is a
problem since the compiler's data structure are not thread-safe.

I'm hoping that ``Tree.shortClass`` will provide enough information when the
list of hyperlinks is empty (if you have a better candidate, please say
something, or open a pull request).
Integrated feedback from Pull Request #232

Suppressed logging.
Merge pull request #232 from dotta/issue/race-condition-in-hyperlinking-1001330

Fix #1001330 - Race condition in ``ScalaDeclarationHyperlinkComputer``
Refactoring

* Renamed ``eventActor`` into ``companionActor``.
* Added a note on classes that need to be thread-safe.
* Passing an optional ``Range`` to ``ScalaStepOver`` (let's avoid using null).
Merge pull request #231 from dotta/feature/small-refactoring

Refactoring
Add test cases for semantic highlighting

Further testcases that do not work due to too less information
in the AST provided by the compiler. The test cases should be
activated and implemented once the compiler stores more information.
Merge pull request #233 from sschaef/issue/testsuite-enhance

Add test cases for semantic highlighting
Added attach and listen Scala remote connectors

The new connectors are added to the platform through extension point.
Updated the computation of canTerminate and canDisconnect in ScalaDebugTarget.
Made ScalaDebugTestSession more flexible, to be able to launch modified launch configuration,
and execute random code during launch.
Modify the tcp ip spy to support communication both side (debugger listens or VM listens)
With tests and remote test launch configurations.

Fix #1001129
Extracted the common connector code and other review changes

pr #220
Added a wait for open port in attachToRunningVM test.
Change processing of thread suspended event to be asynchronous.
Fixed compilation error after rebase.
Updated following review comments

pr #220
Added an utility method in ScalaDebugTestSession to create and add debug event listener.
Additional clean up
Allow to override $ECLIPSE variable in plugin signer script

While working on our "uber build script", I needed this little tweak (which I
find convenient either ways, as it makes the default value more general).
Uses 'free port' selection in tests
Merge pull request #220 from skyluc/issue/remote-scala-debugger-1001129

Added attach and listen Scala remote connectors
Bump up the timeout for the remote debug tests
Correctly cleanup 'fake' waiting process.

Added missing line.
Added check in test.
Re #1001129
Merge pull request #235 from skyluc/issue/cleanup-remote-listen-debugger-1001129

Correctly cleanup 'fake' waiting process.
Fix OOM in DebugTerminationTests

There were two issues in the termination tests:

* mocking `eventQueue.remove` instead of `eventQueue.remove(anyLong)`. This lead to the VMDisconnectedException test failing now and then (surprisingly, it passed most of the times)
* another test that mocked `eventQueue` never simulated a VM disconnection. This lead to the `ScalaJDIDispatchThread` to continue running indefinitely, calling `remove` on a mocked object. Mocks remember every interaction, meaning each method call will be stored in the mock, eventually leading to an OOM, and some *other* tests failing (for instance, with time outs).
Merge pull request #237 from dragos/master

Fixed DebugTerminationTests
Merge remote-tracking branch 'origin' into platform/juno