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?
Why filter the queryset a bit with `self.kwargs` and then do this `get_object_or_404` passing in filters which filters the queryset by `self.kwargs`? Seems like you're doing half of it one way and half another way but I don't understand why.