Initial SNS Support

We've been using this for a while around here and it works pretty well, although it's still not 100% complete.