Lifecycle Enhancements

Several updates, including new phases in SoftwareProcess lifecycle, with the ability to skip installations, new attributes for cluster members, some JMX fixes and minor tidying and formatting.

Needs a bit more testing before merge.
It allows install to happen without waiting on dependency resolution for `attributeWhenReady` (like the `REDISTOGO_URL` environment variable in the Node.JS example app) that cannot ever affect it. The install method should not be accessing attributes or caring about other entities, it is only interested in stuff required for any instance on an entity.