Tests

Gettin' some law and order up in our test cases.

Specifically, this branch:
 * Splits up the two behemoth test cases (commands and parser) into several files in their own directories (closes #40).
 * Adds a MUSSTestCase subclass of twisted.trial.unittest.TestCase, which includes a bunch of methods which had been duplicated amongst the existing test cases along with some other utilities.
  * Swaps this in for several, but not all, of the existing TestCases. (I didn't change it when a test case wasn't using any of the functionality it adds.)
 * Adds a PlayerMock subclass of muss.db.Player, which mocks up the send method and provides a couple of convenience utilities.
 * Adds a ParserTestCase subclass of MUSSTestCase, for methods which are used a lot in the various parser tests but not elsewhere.
 * Removes default authority from setup where it had existed, so tests have to add it where they're using it.
    * Adds a sudo utility for running one-line expressions with SYSTEM authority (e.g. for object generation).
 * Does a lot of miscellaneous cleanup and some minor bugfixes.