Support for running tests standalone

Allows unit tests to be run standalone by just adding a require to the
top of a test file. This is useful if, for some reason, a command line
tool is not viable.

Just add the following require statement to the beginning of a test file:

	require 'busted.runner'()

This addresses issue #294.
Fix indent in runner
Refactor runner to be compatible with live coding