Clean up 'git status' output
Move get_config() out of util.py (and out of crawl.py) so that what is
in util.py does not depend on any other .py files in the project. A
better place for get_config() is in CrawlConfig.py. The tests and test
data associated with get_config() came along also. Tweaked some of the
tests to improve their structure (simple list of exceptions rather
using a state variable to track whether an exception was raised.)

Wrote routines testhelp.module_test_{setup|teardown} and updated the
component test classes to call them for common operations rather than
each test class do all the work in it's own setup and teardown
routines.

Default to sqlite if the dbtype is not specified (if the dbi section
or the dbtype option is not present).

Moved some common test routines up into testhelp.HelpedTestCase.
Ensure all test modules use the testhelp setup and teardown routines
for consistency.
Move util tests out into UtilTest.py so that the tests can use the
facilities from testhelp without util.py having to import testhelp,
which is wasn't working because testhelp also import util.
 - In the testhelp setup and teardown functions that everybody else
   calls, handle either a string or a list so that CrawlPlugin can
   clean up all of its test directories.
 - Update all_tests to call UtilTest rather than util since we moved
   util's test out so UtilTest can import testhelp. Since testhelp
   imports util, having util import testhelp was problematic. Moving
   the tests to a separate file resolves this issue.
Have crawl.py use util.contents() rather than its own copy/version.
Updated the version in util to return either a string or list at the
caller's request.
Document everything better.

Remove some obsolete code.

Translate sqlite3 errors to DBIerror.