Adds error reporting

This adds logging that takes unhandled exceptions and other cases that we want to log and makes it a bit configurable. Error messages are sent to stderr and, optionally, Amazon SNS. Messages are also throttled so that we don't end up with some large number of the same messages piped through SNS or filling up our error log.