fix lzma includes
Merge remote-tracking branch 'jw/master'
fix msvc build
various tweaks to get hello-ios working with the Android library
fix build when let expressions aren't available
fix heapdump build
remove "low memory" heuristic from heap code

The original goal was to minimize memory usage by garbage collecting
more frequently and more comprehensively as we got closer to the heap
limit.  In practice, though, this just slowed the VM to a crawl as
memory pressure increased.  If an app really wants to use a lot of
memory, the VM shouldn't penalize it aside from throwing an
OutOfMemoryError if it exceeds the limit.
remove thread from thread group on termination

In the OpenJDK library, ThreadGroup maintains an array of all Threads
in that group, so the VM must explicitly remove threads as they exit
or else neither they nor any objects they reference will be eligable
for GC.
avoid allocating a new gen2 heap larger than the available heap capacity
fix System.loadLibrary for OpenJDK tails=true build
merge target Multimethod::branchIndex