API v1 spec

This is still a work-in-progress, but any feedback is more than welcome.
It's implying that the sub-headers are our solution to "version negotiation"