restore accidentally removed EngineError

in cleanup PR #3527, I removed one too many exception classes.

I acked IPython to check that I didn't miss any more.

closes #4100

should be backported to 1.1.