Added support for module redeclaration; now it adds every new object in the previous declared module and it's run soon after it's parent in declaration order;

Example:
    module main { say "main module" };	 #6
    module A { say "a" };		 #1
    module B { say "b" };		 #2
    module C {
        say "c";			 #3
        func e {say "e"};
    };
    module D { say "after first C" };	 #5
    module C {
        say "C redeclared";		 #4
        func f {say "f"};
    };
    C::e();				 #7
    C::f();				 #8