almost there, needs a bit more documentation and test_model script