breaking out new model + adding unit test