Split memory management

Some attempts to address #1079 -- just for discussion at this point.
@michaelcahill -- no objection, but not sure what was going on here, maybe you meant to do some additional work?