Make virtual router ID configurable

If two virtual routers are on the same network, they
must have different ids to prevent conflicts.
Fix keystone endpoint

Keystone needs a /v2.0 suffix on its endpoints. This
patch adds it to both admin and public endpoints
Add network namespace capabilities

RHEL kernels don't have netns support. This
patch takes the code from packstack that detects
the capabilities, and installs the latest kernel
if they are not found.
Fix default condition for compat

Notice is not a resource, should be notify
Move repositories across from openstack module

This patch adds the ubuntu and redhat repo management
from the openstack module, and adds the icehouse gpgkey
for RDO. This is a straight copy, and no improvements
have been made to the structure.
Stop testing for quoted booleans

The network namespace fact returns a true or false
string, so the lint check for quoted booleans is
causing warnings where there are none. This patch
disables that class of warning.
Add testing for netns support
Add default case for rdo repo
Bring auth file across from openstack

This patch brings support for the admin auth credentials
that was previously present in puppet-openstack.
Bring across support for test file

This patch brings support for the basic test
file present in puppet-openstack
Add missing template for auth_file
Bring across support for openstack client class
Correct failing tests for client class

The client class requires all the stackforge modules to
be present, and had its name wrong in its spec test. This
patch adds the needed modules to fixtures and corrects the name
Add spec tests for repo class
Make host management optional

If a site is managing their own hosts file,
it may be desirable to remove the current hosts
management. This patch makes hosts management
optional by removing the required parameters
and only setting /etc/hosts if they are set.