pre-merge save
Merge branch 'master' into couch-rollback
added safe methods to cradle, couldn't get blocking ops though :(