Simplify access to Normalized name

now it's only necessary to have the decl and the interpreter.
Use simplified GetNormalizedName interface
Correct name of warning emitter
Adjust routines following ROOT-5906

now the template parameters are not reconstructed using the source
manager (and therefore vulnerable to, for example, preprocessor
statements) but the template parameters accessed through the clang
API.
In presence of a non strongly typed enum as template parameter
the forward declaration is bailed out since it is not possible
to have one. The transition to c++11 and strongly typed enums
will allow the forward declaration of those.