Schema

cc @milo
this should close #17.