set up views and controllers architecture