First version of the Model layer.