no extending unions; yes implicit union membership (satisfies? extends?)
pass through tags with this protocol's type
Resolve union protocol symbols for emit-protocol
use emit-union-protocols
use 'this for self-referential type
Use symbols for tags, enable declared protocols
clean up declare-protocol
simpler declared protocols
gen dummy interface in declare-protocol
vec of unions
Fully qualified java.lang types