Rewrote SQS callback handling.

This includes the following changes:

* Usage of v1 of the AWS SDK as v2 is still in beta (and we already use v1
  everywhere else)
* Usage of URIs for SQS instead of full queue URLs
* Tests!

The reasoning for using URIs instead of full queue URLs is to conserve space in
SQS messages as well as making management easier. For example, if you use
"sqs://foo" it doesn't matter what the URL is. This in turn allows you to delete
and re-create the queue if needed. This also allows one to tell others they can
use your queue, without having to give them the full URL.
Cleaned up Rake setup.