push to github with all but mds done.

this commit includes the puppet manifests to manage clients, keys, osds,
pools, repos and the rgw (including keystone integration).

it is usable, but does not include rspec tests (coming later).