refactored out metadata parsing into separate function
add CLI command to query book info
added --debug to print stack traces
absolute_import in datastore
update_library exception handling is in
no cross-table pk name clashes anymore
better setup of rethinkdb indexes
much improved get_missing_books; also allow filter by md5 hashes
pyflakes fix
output improved dict from update_library
update client's books with ogre_id
removed old supervisor pip.install reqs
updated dev & prod pillar vars
ogre_id now stored as identifier; updated whenever missing by ogreserver
removed old SDB cruft
updated pip reqs; dropped unnecessary socketio lib
cleanup old test cruft
relative import in ogreserver
better exceptions in ogreserver
requirements.txt for testing