ISPN-4377 Make receiving state option for Hot Rod remote events

* Add attribute to @ClientListener annotation to decide whether
to send back state to clients when adding listener or upon
failover.
* Refactored Hot Rod server event log listener to add assertions
to the listener itself.
* Added missing javadoc to @ClientListener.
* Modified addListener protocol operation to support optional
inclusion of state.
* Updated Hot Rod protocol 2.0 specification to add new flag
for addListener operation.
* Updated Hot Rod client documentation to specify how include
current state functionality works both when adding a new listener
for the first time, and upon failover.