middleware should handle not founds too
big refactor of models and tests added
more utils
change Create to New
add Remove and add test for it
big refactor