Improve handling of unexpected exceptions in topics:
 * Treat exceptions in topics as failing tests and conversely treat topics as passing otherwise. Count these as honored/broken vows in the final counts.
 * Run teardown functions for a context if the topic passes, regardless of the outcome of subcontexts.
Report topic pass/fail as a testcase in xunit
setup.py: Don't install the 'tests' package

This package is useful for testing, but not namespaced appropriately
for a system-wide install ;).  For docs on the exclude syntax, using
this exact situation as an example, see [1].

[1]: https://pythonhosted.org/setuptools/setuptools.html#using-find-packages
MANIFEST.in: Distribute the tests package

We don't want to *install* these, but we do want users to have them in
the tarball, in case they want to run the tests locally to verify
their installation.
Merge pull request #109 from wking/tests

Cleanup tests/ packaging
Merge pull request #108 from coreypobrien/better-unexpected-topic-exceptions

Better unexpected topic exceptions