added model and first version of tests