Template layout

adding layout support of template render
- refactor template.go, adding new `TemplateLoader.Register(string, string) error` interface
- new `Controller.CaptureTemplate(string) (template.HTML, error)` interface
- new `TemplateReader` for custom template parsing