Major refactoring: update exception handling. TPFE is internal exception, serves to report template issues without necessarily cancelling generation process.
Approach to exceptions is consistent now - root rules used to trust TG to handle exceptions, while regular reductions did that themselves; with present approach intermediate exception handling is gone, now they are (mostly, except for TPFE in unrefactored weaving handling) caught and processed at TemplateGenerator level.
Passing few SNodes back and forth just for the sake of error logging is no longer needed.
Do not generate code that doesn't benefit from MPS languages, POJO is good enough.
Be more expressive with message in DTMRE (if avalable)
Huge new clause with nested generics doesn't look nice
Template fragments not necessarily live right under container node.
Refactor GenerationFailureException
Merge remote-tracking branch 'origin/master' into 3.1/artem/default