initial sketch of locking, register grouops, and various support for specialized heap allocation strategy