generated profile model. added initial tests.