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?
When will `is_template` be `None`?