Resource type for software configuration

    Implementation of the SoftwareConfig resource. Some notes on the implementation:
    * This is a simple wrapper over the REST API, and is essentially
      just for defining data which gets stored.
    * SoftwareConfig will always be UpdateReplace, and the REST entity
      is immutable.
    * OS::Heat::SoftwareConfig will sometimes be used in a template directly
      and sometimes inside a resource provider template which
      defines CM-tool specific properties and aggregates the result into
      the OS::Heat::SoftwareConfig config property.

Implements: blueprint hot-software-config

Change-Id: I7350c31ec59d152751c6aa7d811a91e1df62e89d