create models, relationships and tests