Invocation is now an implementation detail

This is a preparation for performance improvement where we can replace the OperationServiceImpl
by different ones to improve performance.
Refactored the code so that a new OperationService can be injected.

Renamed the OperationServiceImpl to BasicOperationService (better name anyone?). Also the
Invocation related stuff has the 'Basic' name in them to show that these things
belong to each other.
Minor javadoc improvements + added missing copyright section
containsKey() checks near cache first
Renamed OperationServiceImpl to InternalOperationService
Merge branch 'improvement/3,x/made-invocation-implementation-detail' of github.com:pveentjer/hazelcast
Merge pull request #1390 from jerrinot/containsKey-CheckNearCache

containsKey() checks near cache first
client IO stress test
client io Test
handle NULL_OBJECT inside NearCache
client io Test adding more listeners that executor threads
Merge pull request #1386 from noctarius/fixed-850-delegatingfuture

fixed #850 - DelegatingFuture.isDone always returns false until get is c...
Improved reliability by adding priority execution for System Operations.

In the old approach, system operations like partition movement, member joining/leaving the cluster,
were put on the same queue as regular operations like map.put. The problem is that when the system
is overloaded and the queues are full, that the Hazelcast cluster will not be able to deal correctly
with cluster changes, because system operations can't be executed quickly.

This PR change that behavior by introducing the SystemOperation marker interface and executing these
operations with a higher priority than regular operations.
client io Test Executor Pool Size Low Simulating A high amount of listeners and Async Opps
client io Test Executor Pool Size Low Simulating A high amount of listeners and Async Opps
@Ignore("Issue #1391")
Added urgency to the IO system so that urgent packets are send with a higher
precedence than regular packets.

Also some minor renaming.
Merge pull request #1398 from Danny-Hazelcast/ClientIOTest

Client io / nio test
Merge branch 'feature/3.x/systemoperations-priority' of github.com:pveentjer/hazelcast
Marked ReplicaSyncResponse with UrgentSystemOperation.
Added copyrights.