Create BackedupMapDataLossTest

Test case to validate nulls being returned by a distributed map on n/w disconnections, in a cluster of 3 nodes with backup count set to 3.
Fixed remote exception and added unittest to show this is already fixed
Use Config created when creating Hazelcast instance
Moved impl classes of topic to impl package
Moved queue implementation classes to impl package
Fixed issue with topicservice.statsmap access
Added FutureUtil class to unify calls with multiple Future objects

Conflicts:
	hazelcast/src/main/java/com/hazelcast/util/ExceptionUtil.java
Removed some useless method overloads and lowered object allocation rate on ExceptionHandlers
Renamed test methods, fixed compile errors
fixes #3110
Merge branch 'master' of https://github.com/hazelcast/hazelcast
Improved IO threading model documentation
Modified Set documentation to include more details on partitioning and backup storage
Deleting unwanted test case
Merge pull request #3115 from wildnez/tempo

Modified Set documentation to include more details on partitioning and backup storage.
Merge pull request #3114 from pveentjer/doc/3.x/io-threading-model

Improved IO threading model documentation
Java Client section more improvements.
Reviewed IO threading section improvements
Reviewed Java Client section authored by Asim.
Moved the maploader executors to the ExecutionService to it is less obscure which loader exists