It'd be nice if isCoercibleTo was just a bit mask operation and the types you're coercible to were indicated in the constructor