extract models into their own namespace

This will allow us to build separate backends - postgres for instance - without needing to redefine models