Persistence api ndb

I pulled in the persistence-api and then did somewhat of an integration with ndb-persist.
I proposed sending options to Context by passing them through context.new().
The ndb persistence is still hard coded to context, but in a way easy to de-couple once the configuration scheme is final.
One big change here is the ability to pass in a function to combine the results from tasks at the group level('leaf_combiner') and a function to combine results of the groups('internal_vertex_combiner'), as well as a success callback that gets passed the context id and it's results.
I've attached a export of my current adobe idea board for some illustrations.
![MarkerTree context callbacks](https://f.cloud.github.com/assets/3202410/83737/e4a63bd6-63ed-11e2-9aa8-40d8b6a47b6e.png)