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)

Instead of flipping the logic upside down, can we just say something like

```ruby
def in_use?
  stacks.exists?
end
```

or if using the scope approach I mentioned in https://github.com/ManageIQ/manageiq/pull/899/files#r19684050 makes more sense.

```ruby
def in_use?
  in_use.exists?
end
```