Core: use separate proxies for each allocation
Core: use separate proxies for each allocation

Previously, we would inline all the way down through the whole core's
code.  But if the JVM hit an inlining limit, it would leave later groups
completely uninlined, resulting in horrible performance.  With this
change, we'll inline through groups (which should not trip an inlining
limit), then dynamically branch to the groups.

tl;dr: the JVM does top-down inlining; we want bottom-up inlining; this
commit adds an inlining barrier to get closer to what we want.

jbosboom/streamjit,jbosboom/streamjit