better model-view structure, refactored timeline