Truffle/Instrumentation:  significant rearrangement (including moved class) and extension of the Truffle Instrumentation Framework.  New interfaces include DebugContext (which can be attached to the ExecutionContext), through which access is provided to possibly language-specific  (a) node instrumentation, (b) debug services manager, (c) notification when programs halt, (d) display of language values, and (e) display of variable identifiers.

--HG--
rename : graal/com.oracle.truffle.api/src/com/oracle/truffle/api/ASTPrinter.java => graal/com.oracle.truffle.api/src/com/oracle/truffle/api/debug/ASTPrinter.java
rename : graal/com.oracle.truffle.api/src/com/oracle/truffle/api/DebugManager.java => graal/com.oracle.truffle.api/src/com/oracle/truffle/api/debug/DebugManager.java
rename : graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultDebugManager.java => graal/com.oracle.truffle.api/src/com/oracle/truffle/api/debug/DefaultDebugManager.java
rename : graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/debug/RubyASTPrinter.java => graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/instrument/RubyASTPrinter.java
rename : graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/debug/RubyProxyNode.java => graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/instrument/RubyProxyNode.java
Ruby/Instrumentation:  class rename

--HG--
rename : graal/com.oracle.truffle.ruby.parser/src/com/oracle/truffle/ruby/parser/MinimumRubyDebugContext.java => graal/com.oracle.truffle.ruby.parser/src/com/oracle/truffle/ruby/parser/MinimalRubyDebugContext.java
Ruby/Instrumentation:  renaming/API rearrangements

--HG--
rename : graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/instrument/DefaultRubyNodeInstrumenter.java => graal/com.oracle.truffle.ruby.nodes/src/com/oracle/truffle/ruby/nodes/instrument/MinimalRubyNodeInstrumenter.java
Move functionality of SpillMoveFactory to FrameMap.
Remove unused import.
Merge.
Merge.
Remove unused imports.
Merge.
fix queue code
Don't remove UnboxNode if the incoming type is wrong.
Verify existence of constructor for @NodeIntrinsic methods.
remove assertion in UnexpectedResultException constructor

--HG--
extra : rebase_source : 9515fd91b6b5a184c3ebbdef1357bca3a4ef8ce0
moved readCString to UnsafeAccess next to the other methods
moved to-constant-pool-index conversion up to Java
Direct LIR generation: added alternative compilation path to GraalCompilerTest.

--HG--
extra : amend_source : c30efabd108911a4ab1e6dd9ca0e13fb59a4ce15
Direct LIR generation: created a copy of GraphBuilderPhase for LIR generation.

--HG--
extra : rebase_source : 816fc45a36e225330c8548bdeb8887420cbdd12c
Direct LIR generation: refactoring alternative compilation path in GraalCompilerTest.

--HG--
extra : rebase_source : af5e61cd233b427a1677ac1e7b97610f8f3b4179
extra : amend_source : 9f6db087f56d58e2a096e9b053af3aed1af1026c
Direct LIR generation: make compileBytecodeToLIR static.

--HG--
extra : rebase_source : 01de966b7febce356aa5213eb568f2ae9f2c4267
extra : amend_source : 3a104fcbacb760973a3d5c03f79ac1cdde00af5e
Merge.