Yaocho APIs

This adds a few APIs that were useful for Yaocho. These need to get to prod before I can put Yaocho in the marketplace.

r?
We probably want to version the API. Otherwise it gets hard to deal with when/if we want to make extensive changes.