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.
this looks really strange without parenthesis. Does this compile?