Make ceph optional

This commit refactors usage of
ceph backend tests to make its usage
optional.

It does this by intoducing new properties
glance_backend and cinder_backend.
Make mongo installation optional for ceilometer

introduces property ceilometer_backend
Neutron changes

This large commit performs significant configuration
of neutron test cases to make it more flexible:

It adds the following parameters to allow more
flexible checks of config values:

* ml2_type_drivers
* network_vlan_ranges only used if vlan is a type driver
* tunnel_id_ranges only used if gre is a type driver
* mechanism_drivers
* bridge_mappings

Additionally, it only checks that l2_population is True
when l2population is set as a mechanism driver

It comments out the config for tunnel_types as it does not appear
to be a required setting for using gre tunnels with ml2
Add parameter cinder_glance

which should be configured when cinder
is configured to communicate with glance.

glance_request_timeout is only checked when
this setting is set to true.
Adds cinder_ceilometer property

So that relevant checks to notification_driver
driver are only made when cinder is configured to
send data to ceilometer.
Remove controller vif_driver and servicegroup_driver  checks

These configs appear to only be required for nova
compute nodes.
Add property for resume_guest_state_on_host_boot

It is not default upstream nova config