open union: Data.OpenUnion unified interface

resolves #13 (wontfix)