implemented .equals() for CompilationResult and the objects it encapsulates
removed DeepFieldsEquals utility
made InvokeTarget and ForeignCallsProvider extend Remote
registered a couple more special static field values
made HotSpotCodeCacheProvider attempt to load and use the hcfdis tool
fix short circuit for special classes and objects when retrieving object from a replay compilation context
dump disassembly of non-matching CompilationResults when testing replay compilation
fixed NullPointerException in HotSpotReferenceMap.equals
converted HotSpotForeignCallLinkage to an interface

--HG--
rename : graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotForeignCallLinkage.java => graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotForeignCallLinkageImpl.java
fixed pylint issue
implemented hashCode() for CompilationResult.Reference subclasses
invocations of void methods on proxies are not cacheable as void implies that have a side-effect (e.g., Formattable.formatTo)
use separate scope for capturing and replay compilations
size array appropriately when creating categorized register array
infer stamps for graphs checked in CheckGraalInvariants
replace use of '==' with .equals()