creation of first models and tests
code cleaning via rubocop and error handling