Factor out the code for getting the size of composite types.
Remove unused variable.
Support casts to unions.  All union operations should now work…
Implement copying for DartC objects.
Copy values for correct pass-by-value behaviour.