Ensure that completed services can't be edited

Once a listing has been marked as completed it should not be editable without returning it to drafts.
- The "edit" links won't appear on the summary page
- If the user hacks the URL to get to an individual page this page will return "not found"
- If the user still tries to make a `POST` request to save the page nothing will be saved and the user will be redirected to the summary
I think if we could refactor it to only perform this check once then I'd agree, but refactoring it to be in a different place but still across 40 different controllers doesn't feel worth it to me.