Walk through typedefs when checking for void pointers.
Small cleanup.
Added native to managed marshaling of fields.
Cleaned up the constructor generation logic.
Added marshaling of native to managed when constructing structs from native objects.