Allow a failed test to skip subsequent irrelevant tests

Example use case:

* perform an HTTP request
* assert that it returned status code 200
* only if it did, perform a zillion tests on the response

Method:

* a new `it.skipsOnFailure` function that makes subsequent `it`:s not run if that one failed
* a new `describe.skipsOnFailure` that makes descendant `describe`s not run if any encountered in it failed

I am apparently [not the first](https://groups.google.com/forum/#!searchin/mochajs/fail$20skip/mochajs/3pY5FVfigk0/zGqnUu0SFuQJ) to want this feature. Is the function name good? (It's a little long, but reads like English. As `it.only` doesn't, though, maybe `.skipOnFail` or even `.skip` is better?)