feat(Template): Introduce the @Template annotation

Transclusion syntax has changed (The former syntax is supported but will
be deprecated in the next release)

Before:

    @Decorator(
        selector: '[ng-if]',
        children: Directive.TRANSCLUDE_CHILDREN,
        map: const {'.': 'mapping'},
        <other kv pairs>)

After:

    @Template(
        selector: '[ng-if]',
        map: const {'.' : 'mapping'},
        <other kv pairs>)
use `.getAttribute()` faster than `.attributes`