create timeline and refactor models and controllers