Drafted first models, need some checking

They're not used yet in the API