Merge pull request #27 from bfops/sss/open-union

open union: Data.OpenUnion unified interface
sss/open-union: Typeable instances for Union, (:>)