semantic: Generalise size getting.

This makes structs with aliases var members work.
semantic: Retrieve type from typeid expressions.
vrt: Add stub typeinfo module.
vrt: Add type field to TypeInfo.
vrt: Add mangledName method to TypeInfo.
semantic: replace typeid expressions with calls to new TypeInfo(...)
semantic: Mangle the name in typeinfos correctly.
semantic: Get parent names for typeid mangles from scope names.
semantic: In classify.scopeLookup, check for non-null scope member.
parser: default import object statically.
semantic: retrieve TypeInfo from object.
semantic: WIP (broken) struct literal stuff.
vrt: Move TypeInfo into object.

This is much simpler in terms of TypeInfo retrieval when
_inside_ of object.
semantic: Add remove method to Scope.
semantic: Name lowered structs as TypeInfo.
semantic: Split lowerers pass into two.

All the classes in all the modules need to be lowered.