Fix HazelcastHttpSession's setAttribute() with null value

HttpSession.setAttribute() should work with null value the same as removeAttribute(). Changed from throwing an exception to delegate call to removeAttribute()
Fixed IMap replace() always generating ADDED events.
This should only ever generate UPDATED events if successful.
This seems to have regressed in Hazelcast 3.0.
Hazelcast 2.x seems to have only generated UPDATED events, see https://github.com/hazelcast/hazelcast/issues/418
Added a test that verifies that the old behavior is broken and the new behavior works.
Use assertTrueEventually in the test, as events may be delayed.
Added proper comment
Doubled length value and added check if both values are the same which is unlikely to happen for wrong or broken packages
Added unittest
Lots of minor cleanup
More work
Supression fixes
Resolved findbugs issue
Removed unwanted findbugs supression
Resolved merge conflicts
make map service check style compliant
fix test
Fixed query docs
first small changes
map service check style
map service check style
Added 'how to implement your own supplier' and some fixes