OS::Sahara::Cluster resource implementation

* This patch implements resource for Hadoop cluster provisioned by
  Sahara based on Sahara's cluster template.
* Heat template for stack based on this resource should have minimal set
  of fields needed to provision cluster.
* To successfully provision cluster the following steps should be done:
  - Sahara enabled and working in your env
  - Sahara contains valid cluster template [1]
  - Sahara's image registry contains registered image with preinstalled
    Hadoop components [2]

[1] http://docs.openstack.org/developer/sahara/restapi/rest_api_v1.0.html#create-cluster-template
[2] http://docs.openstack.org/developer/sahara/devref/quickstart.html#upload-image-to-glance

Related sahara's blueprint:
https://blueprints.launchpad.net/sahara/+spec/sahara-as-heat-resource

Implements: blueprint sahara-as-heat-resource

Change-Id: If470511cbb88349f47a61a35b1a19ba7c68efd83