make MockView handle retries
add retries support

note that the test fails when run without MockView

this is because IPython won't reschedule a failed job on the same
engine. ref https://github.com/ipython/ipython/issues/5977