Use rack middleware to reject invalid UTF-8 bytes

This will prevent requests with strange characters in them raising
500 errors
Merge pull request #1038 from alphagov/59741752-utf-8-fix

Use rack middleware to reject invalid UTF-8 bytes

https://www.pivotaltracker.com/story/show/59741752