First stab at adding a CloudStack provider

This commit is a first stab, but is a fully working commit. More stuff
and some tests still need to be added before making a PR.