Tests for catalog items versioning functionality.
nextAvailablePort, give better error messages

Validate that the given argument is in the valid range for port numbers.
If not possible to find a port in the valid range, throw a descriptive
exception message (instead of trying an invalid port number and getting
an IllegalArgumentException from the JRE)
Fix illegal argument in isPortAvailable

JRE docs say that the wildcard address can only be used on bind()
operations, but there's a case where we might use it in a connect()
call - this is undefined behaviour. Correct the code to pass in the
loopback address to connect() instead of the wildcard address.
This closes #407
This closes #396
MongoDB replica set improvements

* Initial size is 3 if unspecified
* Uses BrooklynAccessUtils to configure addresses and ports
* Fixes a number of integration tests
MongoDBServer uses configuration with smallfiles and noprealloc

"Leaner and meaner", as according to MongoDB/Docker documentation.
Node entity ensures NPM's modules are on NODE_PATH
Use isX rather than getIsX in TaskSummary.