Make subscribe_sqs_queue idempotent

This patch changes the sid from being a random UUID4 string to an md5
hash of the combined topic & queue ARN.  Since the Sid is now a known
value we can check to see if a Statement with the given Sid already
exists.  If it does, do not add it again.

The reason for this is that as subscribe_sqs_queue is it isn't
idempotent.  It will add the same statement (with a new Sid) repeatedly
until you hit the limits of the SQS Policy (20 statements, 8192 bytes).