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 using arel_table for the sql fragment building...

```ruby
includes(:stacks).where(OrchestrationStack.arel_table[:orchestration_template_id] => nil)
```

Also, this might be better as `joins` instead of `includes`