Shrink down the exposed methods.

The catalog really only cares right now about getting or
creating a logbook for a given job, lets keep the api simple
to just do that until further notice.
Remove and add a few new exceptions.
Add some search functionality and adjust the await() function params.
Rename the date created field.
Add a running state which can be used to know when a workflow is running.
Ensure that the task has a name.
Add a context manager to the useful read/writer lock.
Rework how we should be using lists instead of ordereddicts for optimal usage.
Fill in the majority of the memory job.

Testing to commence shortly!!
Begin adding testing functionality

Take the current run_tests.sh from glance and include
that as well as fill in the rest of the pieces needed
for those that use venv functionality. Start adding
memory tests.
Rework due to code comments.
Merge pull request #5 from harlowja/master

Lots of newness.