Fix topic errors

This pull request changes the behaviour when an error is raised in a `setup` or `topic` function. As explained in issue #101, the old behaviour is not well documented (as far as I can see) and makes it hard to find errors if they occur in the topic function.

The changes are:

 1. If the setup or topic function raises an error, the following nested tests are not run and the error is reported.

 2. The old behaviour, where an error raised during the topic function is returned as the topic value, can be regained by adding the `Vows.capture_error` decorator to the topic function. I have updated some existing tests which used this.