load_acl now returns the acls loaded.
Update todo list.
Load smith relative to __FILE__.
Replace ruby_protobuf with protobuf.

ruby_protobuf is unmaintained and has very poor error reporting. I don't
think it's compliance is up to much.
Replace Yajl with MultiJson.
Add support for config files in the cwd.

This will check the local directory for a config file and use it if it
finds one. If not if will go back through the directory tree until it
finds one or reaches $HOME.

It would probably be useful to also check /etc, /etc/smith and specify
the config file as a command line option.
Log which config is being used. Add config_path method.
Remove old gem requires.
Use succinct method of specifying smithctl timeout.
Remove Payload#initialized?. It's better to catch the exception.
Update todo list.
Add general mechanism for defining queues.

This allows you to define queues using a Smith::QueueDefinition class
which means you can define the queues and options in one place and reuse
them where ever needed. Quite why it's taken me this long to implement
this is beyond me.

I should point out the the old way of defining a queue name and an
options hash still works.

I've only done this for internal queues at the moment but it won't
require much work to add it to the sender/receiver wrapper methods.
Finish off the queue definition work. There are also some command fixes.
Command to return the status of the agency.
Bump version to 0.6.pre.
Update todo list.
Update todo list.
Create cache path if it doesn't exist. Remove crufty code.
Raise error if ACLs can't be compiled.
Update todo list.