fix return type
fix tests: propagate item type name

baseName in typeData is set to qualified name and is used as it.

once the item changes its qualified name, e.g. during reparenting,
the basename of its typedata should reflect it as well.
update nodejs (and in turn v8)
fix tests: include type traits early

the std::string type traits (such as serialiser) are
cached from the first time its used to define e.g. a field

subsequent uses of such type dont have the specialised serialiser
as its used from the first time it was generated (assigned to
GMetaType virtualFunctions).

An alternative fix would be to clear mapped classes cache after each
test.

Note: the tests compiled with -O3 weren't affected, this was reproducible
only with -O0 compile flag.
improve tests building
fix tests: set hidden prototype flag for V8 methods

this is required after the V8 upgrade as its introduced
by this commit in V8: 83952ec1e41077e365b00a3fc8b493a8ce0717d9

    Change deprecated semantics of function template signatures.
    Review URL: https://codereview.chromium.org/11308197
return undefined for not existing enum prop
fix tests: store cached class name for object