Basement for MVC
Model, part 1
Model, part 2
Model, part 3