models, migrations and tests for user and survey