Use different UDP ports for different integration tests

This does three things:

1. It uses different UDP ports for different integration tests
2. It subscribes to the SQS queue to make sure that's in place before the message is sent. If this isn't done, and the message is sent before SQS is listening to SNS, the message will be correctly silently dropped.
3. I've added a changelog.

I think each change we make should now append to the changelog, with an "Unreleased" date. We can then amend it when we push new releases.

I'm following the guidance from here: https://github.com/tech-angels/vandamme#changelogs-convention