Roles/Profiles manifests based on hiera.yaml

This pull request contains role and profile manifests according to the roles/profiles pattern: http://www.slideshare.net/PuppetLabs/roles-talk

The following roles are available:
* allinone: a node containing both a mon and an one or more osds
* mon: a mon node
* osd: a node with a client.admin, client.bootstrap-osd and one or more osds
* client: a node with only the ceph.conf config and client.admin key

The osd and client roles require a mon is already available.
When adding multiple initial mons, the puppet runs waits (hangs), until all mon nodes are up. This is due to how ceph gets bootstrapped and not due to the puppet.

The above roles use the following profiles:
* base: installs ceph and configures ceph.conf
* mon: configures a mon process
* osd: configures one or more osds
* client: configures the client.admin key

All of the above are configured via hiera. Example hiera files are provided.