Adding an "openstack::repo" class which automatically sets up repos

Tested with the following combinations:

- RHEL-alikes, OpenStack Folsom
- RHEL-alikes, OpenStack Grizzly
- Fedora 18, OpenStack Grizzly (F18 includes folsom)
- Ubuntu 12.04+, OpenStack Folsom
- Ubuntu 12.04+, OpenStack Grizzly

Change-Id: I737da83d138695a178aaf3fa711a6e08a678adde
Refresh openstack::all

I took the current openstack::controller and openstack::compute classes
and melded them into openstack::all.

One notable difference between this openstack::all implementation and
the one we had in Folsom is that this one allows for additional compute
nodes to join the all-in-one node.

Change-Id: Id5611e1de3d574070db72f7c2b9741f2a6fe472d
Storage node now uses local zone variable name.

Puppet 3 scoping changes mean that the exported resources cannot see
the parent scope $swift_zone variable, and must instead use the $zone
variable passed to the device_endpoint defined type.

Change-Id: I9780065c535da713c6d1d4a156f5d688e0ab9c63
Fixes: bug #1190459
Merge "Refresh openstack::all"
Merge "Adding an "openstack::repo" class which automatically sets up repos"