Union support for swift

codec support (reflection and bytecode), generator support. Lots of tests.