#1710 some refactoring to make classes more clear of their purpose and to make them more reusable
#1710 initial spike to reuse the custom docker generation code from the Java Container
#1710 moved common PIDs to core API
#1710 moved system properties constants to the API bundle
#1710 specify the environment via system properties so that if there is no environment configured we default to the system properties pid on profiles; so adding/removing profiles dynamically or via environment variables on startup lets use set the environment
e.g. running locally with:

export FABRIC8_PROFILES=docker

will set the environment to 'docker' so that things behave as if you run inside docker (e.g. so that child container is disabled by default)
#1710 specify the docker environment when resolving environment variables; so we can configure them differently to those of non-docker (e.g. for process containers)