Contrail work

Contrail work.

Still working on below stuffs

1. Inline documentation
2. More complete spec tests
3. Pending vrouter part - this need working nova, so working on setting up nova. Vrouter code is already there so only some small changes would be required.

NOTE:
This code will only work with single node. Multi-node code is not added here. 
With current code, it need two puppet runs to setup contrail completely. This will be fixed after implementing service blocker for internal applications in contrail system which is WIP. 
this line of code has the exact same behavior as if it were omitted.