Cleanup SNS code

As per the (now-removed) message in sns.go.

I've separated this file into several different files:

* message.go - The Message struct, nothing else
* permissions.go - Permission requests + their structs
* subscription.go - Subscription requests + their structs
* topic.go - Topic requests + their structs
Remove commented out debug code
Remove topic+message args from sns.query

This function never did anything with topic or message. Not only that, it was always called with the first two arguments of nil.
Remove sns.DeleteTopic

It doesn't make much sense for this function to be on sns, when you're passing in a topic object and then calling Delete on it anyway. If you have the topic object, just call
Merge pull request #85 from radar/sns-cleanup

Cleanup SNS code