Initial commit of a Scala debugger.

It is enable using a checkbox in the preferences.
It replaces the Java based debug elements by the Scala ones.
Only terminate and improved step over actions are supported right now.
None of the labels are fine.
There are likely a lot of bug and other missing things.
I'll create some doc about it on the website.
Defining ??? in the model package for scala 2.9

??? was added in 2.10, and I'm using it in the code right now.
This change can be reverted when the model is fully implemented.
Merge branch 'master' into feature/scala-debugger-1000864
Improvements to the Scala debugger

Improved display of all elements.
Added support for resume action.
Added 'this' in variable list.
Created tests for all improvements.
Added hack of logical structure support.
Merge branch 'master' into feature/scala-debugger-1000864
Support for toString in detail pane

Improved the support for logical structure for collections
Changed the display name for array indexes
Added support for symbols in names

With tests
Merge branch 'master' into feature/scala-debugger-1000864
Set of improvements to the Scala debugger

Added display of boxed values for boxing types
Added a tweak for a JDT bug.
Added support for step into and out actions.
Improved the test framework so it is more resilient
Fixed some stack traces thrown when program was terminating
Updated source locator to work with any type using file search and type search.
Fixed problem with smart step over in method without line information.
* Reworked the code to use only one list of jdi requests
Fetch local variable value right await, as the stack frame can become invalid at any time.
Changed the way the method signature for the stackframe label is generated
* MethodReference@argumentTypes can fail, especially when debug osgi application.
* MethodReference#getArguments can fail too, for native methods
* Uses the method JNI signature to create a method name.
Send the right event on resume.
Handle null thread group
Logic for can resume was reversed
Merge branch 'master' into feature/scala-debugger-1000864
Boxed char values were not correctly displayed.
Fixed class name for boxed char detection
Fixed the package name set by the index builder

Only the last section was set if the enclosing package was defined.
Fix #1000855
Added test for split package declaration
Added test for classes defined in package objects

Re #1000855
initial work on hooking up existing refactoring actions to quickfix proposals
Merge remote-tracking branch 'upstream/master'
add some comments
Merge pull request #84 from scala-ide/issue/incomplete-package-name-with-auto-import-1000855

Fixed the package name set by the index builder. Need for auto import in completion
Merge branch 'master' into feature/scala-debugger-1000864
Scala debugger stability improvements

Added check to avoid abstract methods in anon func search
Switch to actors to manage debug events
Sorted object reference fields by name
Added support for thread suspend
Fixed problem where main thread was appearing twice.
Fixed debug session hanging. All requests to the VM needs to be set to THREAD_ONLY suspend policy
'this' reference is not available for native methods
Copy of the JDT TcpIpSpy with a fix for ReferenceType#MethodsWithGeneric
Disable step over tests for collection of Ints, due to SI-5646 problem