Got rid of hack with stashing wereReified

1. Made ClosureCodegen extending MemberCodegen
2. Made ClosureContext extending ClassContext
Do not mark class as needReification

in case it contains reifier's markers only within
methods that define these reified parameters
i.e. will be inlined
Extracted wereReifiedUsageOfTypeParameter and

extended description of it's current semantics
Report to codegen when inlined code still contains something to reify
Moved DiagnosticFactories about reified to

``Type parameter declarations'' block
Supported nested reified parameter declarations

Also switched to using type names as identifiers instead of their
indices