[WIP] @Template replace @Decorator

replaces #861

Open questions:
- `@Template` uses `target`, any better name ?
- How could we define the "target" at the attribute level (without duplicating all the `DirectiveAnnotation`s)

TODO:
- [ ] Update the transformers once the previous questions is solved,
- [ ] Add some `@Template` tests in annotation_src_spec

@mhevery, I would appreciate if you can quickly check this - at least help me find an anwser for the 2 opened questions asap.