Fixed a bug where we missed non-direct super-interfaces of interfaces when checking for subtypes.
Explore expressions that might satisfy the constraint after a downcast, and downcast them if they do.