use ErrorExp::errorexp instead of EXP_CANT_INTERPRET

This switches EXP_CANT_INTERPRET from being a magic pointer value to being an ErrorExp instance. Necessary for improving CTFE speed.
If some of the errors are worse, it's a regression.  Refactoring is not supposed to change the behavior.