restructured models and migration, don't need separate models