added view, router, template rendering