more minor types fixes

to union and intersection.  I'm a bit confused by how functions compare,
but will assume it's fine for the moment.