added model and view stuff