first steps to break down mapType

Changes are first step towards break down of the mapping procedures.
Dependencies are not completely untied (and left explicit on purpose).
But at least further re-factoring opportunities can be recognized.
Rationale for changes is to extract mapping of Array<>s so to continue work on KT-3771   
All Compiler Tests pass.