Fixed a bug in my upload_config.yaml where i didn't rename server_config.py to server_database.py. Also fixed the bug in upload.py that tried to call rsync on a file that didn't exist, and made it so it fails gracefully instead of throwing an exception

-----------------
nexported from bzr postcommit_to_git.py,
going from bzr commit:
70:markgrandi@gmail.com-20140822235210-pt6rguzvnc7p4lx9 =>
71:markgrandi@gmail.com-20140825214823-uouihtzyq28xcxzb
Added a new error type for sunspot_messages.proto, and made it so the unit test for sunspot_server.py works again, have a hack to make server_database.py work for both logging.logger and cherrypy.LogManager, i should just subclass ServerDatabase to make it work for the cherrypy logger rather then having the hack i have now!

-----------------
exported from bzr_postcommit_to_git.py,
going from bzr commit:
71:markgrandi@gmail.com-20140825214823-uouihtzyq28xcxzb =>
72:markgrandi@gmail.com-20140826195623-bvbyziuodx2ak0jg
made a subclass of ServerDatabase , that is meant for the sunspot_server.py script, its different in how it accepts the 'logger' argument, since cherrypy's logger is really a LogManager, not a logging.logger object.

-----------------
exported from bzr_postcommit_to_git.py,
going from bzr commit:
72:markgrandi@gmail.com-20140826195623-bvbyziuodx2ak0jg =>
73:markgrandi@gmail.com-20140827210710-x6djn5dpw7h68ajg
added new constants to have options for the leveldb_server.py

And now the meat of this commit: to solve the problem of leveldb only allowing access to the database from one process at a time, i'm using the brand new asyncio package to have a pretty simple server that will accept JSON (soon to be protobuffers) to either get/set stuff from the leveldb database, that multiple processes can connect to, and echoclient.py which is just a test script to infinitely switch between getting/setting random values from the database to test the leveldb_server.py out. Note that its not finished, mainly i have to integrate connecting to leveldb_server.py from the ServerDatabase class, and figure out how i'm implementing the 'iterator' part of the leveldb api, like IterRange, etc.

-----------------
exported from bzr_postcommit_to_git.py,
going from bzr commit:
73:markgrandi@gmail.com-20140827210710-x6djn5dpw7h68ajg =>
74:markgrandi@gmail.com-20140827233222-aajkv1kogyvz9xec