DATAREST-227: Break up AbstractWebIntegrationTest into simpler parts

Decouple the test machinery of this class from the barrage of common test cases used against the various data stores. This way, other test suites that use the same integration approach don't have to be a part of this class hierarchy. 

Also move utilities and assertion methods into separate utility classes to slim down the class hierarchy.
Shouldn't these two methods rather go with `WebTestUtils` as they're more high-level versions of the `request(…)` methods? What's the rational behind the two separate classes? Would you ever use one without the other?