Persistence api

This is the ground work for getting the persistence API wired into Context and Async.  This is required in order to support context callbacks.

This is still WIP, but rapidly nearing completion.