Fixed type parsing.

It caused types like "string[]" still have assigned "string" type name
so in few places the compiler processed it as string and not like an
array.
Fixed 'null' variable assignment
Small file changes