Making union types even more useful

See Pre-SIP: Exact type annotation