Expand tests for compute and controller

This commit contains tests that were added to
capture the complete functionality of the current
compute and controller classes.

These tests were created in order to help accepting
this commit series and its significant refactor by
capturing the current working state of the previous code.

After these tests were created against the former
version, they were applied against this commit
series to verify that this patch worked
exactly the same as the previous code.
Fix bug in variable naming

This commit fixes a bug in the naming of a variable.

was

  enable_network-service

has been update to

  enable_network_service
Remove collection code from openstack::nova::compute

This commit removes the collection code from
openstack::nova::compute.

Having this class collect all nova_config entries
seems incorrect (and dangerous). I prefer requiring
users to pass in all of their connection data.
Pass enabled flag to nova::vncproxy

This commit passes the openstack::nova::controller
parameter enabled to nova::vncproxy to allow
nova controller to be built where this service is
installed but not currently enabled.

This is intended to support active-passive HA.
Always create nova class

This commit removes the defined statement that was
used for conditionally creating the nova class
in openstack::nova::compute.

This usage of ! defined introduced ordering issues
that would make it extremely difficult to understand
how nova would be configured.
unset default for public_interface

This commit unsets the public_interface default.

This is to make the code behave more like the
previous iteration.
Always configure network

This network class is used to configure both
nodes hosting the network service as well
as compute nodes that are utilizing an external
network service.

This commit ensures that this class is always created.
Support enabled for keystone

This commit adds support for keystone servers
running in passive mode.
Add configuration for cache_server setting in horizon.
Support passive mysql servers

Adds code to support passive mysql instances.
Add openstack::compute

This commit adds openstack::compute for backwards
compatibility.
change exported_resources param to export_resources


for backwards compatibility
Add conditional dependency

Add a conditional dependency that glance::registry
should be configured only after its database is
created.

This code only needs to be created on active nodes.
Refactor parameter defaults

Add more parameter defaults to support backwards
compatibility.
Update class parameter documentation

This commit adds relevant class parameters to all
classes.
Update default for keystone admin_address

This updates the default for the keystone admin
address to use internal_address.

This is a more reasonable default than using the
public_address.
Remove auth_file

This commit removes the auth_file from the controller
and all classes.

For backwards compatibility.
Remove unused public controller node.

This commit removes the unused parameter
controller node.
Set defaults in openstack::all class

This commit specifies defaults for the openstack::all
class.
change public_address back to controller_node

To avoid breaking backwards compatibility.