basic changes at the models, views and controllers