Model

I added the dia UML we made on Tuesday.
We should implement the model on this branch.