add new model and the respectives tests
functional and unit tests OKs #Chapter5