Tightened rules for typing intersections
Improved messages for subtraction rules plus fixed some bugs, also turned back on custom type printing to improve type display in error messages