feat(views): Add method to allow events to added dynamically
fix(views): Layout view with template needs to load template
feat(views): Injected deps added to proplist automatically
refactor(template): Add layout template
refactor(main): Update sample to use new features