Added the ability to retry failing tests

Let me explain my reasoning behind this feature.  I have many tests, some of them rather long.  They talk to a backend server (I have another modification to the code I have not made a PR for that lets me call a script after each test run to clear my server database).  I do not want to mock out server calls because I want true end to end tests.

Given the above sometimes tests are going to fail because the server took a very long time to respond.  I want to be able to run the tests, go get coffee, come back and see if my tests failed or passed.

Right now I very often find myself needing to run focus tests on a lot of tests because something along the lines failed because of server lag.

Between this and the run all tests pull request I can be confident that when I return to my computer I will know the status of my tests (although I will need to spend a little extra time parsing the output to be sure).