prioritize UInt ops over Float ops
allow cast(e, TAbstract) by using the underlying type
various fixes to commutative cast order
deal with blocks in side-effect handler