Raise CommandError for errors with options or input.
Move test setup into setUp not setUpClass

Django won't automatically rollback the things we create
in the database in setUpClass, so they leak into other tests
Add a basic test for importing KML files
Add smoke test for django admin pages
Add tests for JSONPResponseMiddleware