Add models for cloud orchestration

This PR is split from original PR #333  (to be discarded). It focus only on the models for orchestrations. 
The master PR #523 covers the design and progress of the support for orchestration including AWS CloudFormation and OpenStack Heat.
![orchestration](https://cloud.githubusercontent.com/assets/7047579/4719534/6144c4e0-592a-11e4-9dc1-7d882f00f947.png)

Prefer:

```ruby
raise NotImplementedError, "raw_update_stack must be implemented in a subclass"
```

We use this wording in many other places.  I feel like it would be nice if Ruby had an `AbstractMethodError`...nudgenudge @tenderlove :wink: