Improve allocator test
Store types in ArgList instead of Arg
ArgBase -> Value
pointer_value -> pointer
Refactor type processing
Comments
MakeArg -> MakeValue
Make print non-inline
Reduce code bloat

Special case C strings because there is no need to handle size for them. Add support for pre-C++11 compilers to make_type.