smalloc: simplify allocation mechanism

Realizing that by creating the Persistent from an existing Object, there
was no need for all the memory pooling magic. So far this has shown to
be substantially faster, and has passed the basic tests I've created. If
it continues to hold up then I'll rebase this commit back into the
first.