Refactor of update method

- Don't add the configuration to what you are sending if there's no difference, rather than adding it and then deleting it
- No need for count or iterating through EdgeGatewayServices

This is not the final version of this method. We need to dependency inject so that it can be tested and split it out so it doesn't have too many responsibilities, but this is as far as we are going with it for this story.
Merge pull request #140 from alphagov/refactor-update

[#62380500] Refactor of update method