INSTALL_DIR and RUN_DIR now inherit from a nicely configurable BrooklynConfigKeys.BROOKLYN_DATA

INSTALL_DIR and RUN_DIR now inherit from a nicely configurable BrooklynConfigKeys.BROOKLYN_DATA_DIR which can be set in brooklyn.properties to change the choice of /tmp/brooklyn-alex, giving an easier way to productionise systems (note this was the cause of observed failues where the JS gui got wiped, because it was running under /tmp/brooklyn-xxx/jetty).

INSTALL and RUN support templating (and use that as part of their default), and are republished as sensors so there is a cleaner way to access them.

Also exposing getConfigRaw from entity so callers can detect whether config is actually set, or coming from a default, and tidying up some of the utils.  (Note deprecation cleanups are needed, but will be done as a separate commit.)  This uses a new Maybe (which is like Optional but allowing null and can be overridden with custom error messages) to expose config values without setting default.