fix Issue 11421 - Dynamic array of associative array literal type inference

Initializer::inferType should be processed recursively
[Refactoring] Fix to return bool
[Refactoring] Make more member functions in Initializer abstract