Extend parser to collect TargetInfo (type widths etc)

I'm using this for an experimental pass that "unwraps" fixed-size arrays in value-types into multiple fields, to do that I need the point width for the platform.
While I was at it I tried to gather widths for all the primitive types as well.

NOTE: I've not yet added this functionality to the new parser so don't merge before that is done:)