Fix bug in WebSocketClient implementations
Enforce JDK version on CI server

Add a test to ensure that the CI server does not accidentally build
with the wrong JDK version.

Issue: SPR-10569
Release version 4.0.0.M1
Increment version to 4.0.0.BUILD-SNAPSHOT
Update README adding explicit JDK instructions
Clarify instructions for building from source

Re-order subsections to make it clear that running a full
`./gradlew build` is not necessary just to import projects
into your IDE or to build and install jars to your .m2 cache.
Mention JDK 8 in IDE import instructions
Merge pull request #288 from dsyer/patch-1

Update README adding explicit JDK instructions
Revise note on avoiding "lambda" JDK