[FLINK-22771][java-sdk] Add testing utilities

* add hashCode/equals to EgressMessageWrapper/MessageWrapper
* add TestContext to Java SDK
* add documentation for Java SDK TestContext
* address review comments
* Fix various code style warnings
* Refactor Envelopes -> SideEffects
* ValueSpec needs to be identified by name, as it does not support equality.
* Support message cancellation

This closes #236.
8 files changed