Add partial UnionDecl support, fix #55

tested against pthread.h. Works for primitive types, will complain (but proceed) for unions with struct sub-fields