Server pool entity

A basic implementation of an entity whose locations can be reused by other applications. Inspiration taken from @grkvlt's work on brooklyn-docker and brooklyn-cloud.

Comments:
* We should swap the use of the EmptySoftwareProcess for an entity that checks the location is still alive and publishes metrics.
* We could extend the pool to include externally-created machines.
* We could/should provide a basic policy to ensure the pool maintains spare capacity.

We shouldn't add policies in the `init()`; it should be done by caller / in yaml. Otherwise, the default won't be right.