Update custom vars plugin for Ansible 1.7+

With the introduction of Ansbile 1.7, our var plugin broke due to
incompatible changes upstream. Update the plugin so that we can make
use of the new Ansible releases.

!version-patch
Update rabbitmq tasks for ansible 1.7+

In recent versions of Ansible, they no longer support some jinja
patterns in tasks. Specifically, jinja may not *add* arguments to a
module.  Therefore, break each of these tasks into 2 separate cases
handled by the "when" conditional.

!version-patch
logging: Remove logging.conf, use log_dir only
logging: Log to file, OpenStack to local3, ignore

All OpenStack services now log to /var/log/{service}. Log files in these
directories are read by rsyslog and forwarded to Logstash, if forwarding
is enabled. We also ignore local3 writing into /var/log/syslog due to
duplication.
tests:  adding test framework for unit style testing

utilizes pep8 for style of *.py
utilizes ansible in local test mode for testing plays
bootstrap: fix locale command

also added the locale to the testenv pre-deploy.yml,
machines spun up by test was giving locale errors in
shell.

there's a few items in the two that should
be DRYed up a little.
Merge pull request #516 from craigtracey/vars-plugin-update

Update custom vars plugin for Ansible 1.7+
Merge pull request #531 from craigtracey/rabbit-ansible

Update rabbitmq tasks for ansible 1.7+
de-variablize locale
Merge pull request #528 from blueboxgroup/fix/locale

bootstrap: fix locale command
Update requirements

Updating ansible to 1.7.2
ssl: crt in local folder, auto trusted

Any .crt files in /usr/local/share/ca-certificates are automatically
trusted by update-ca-certificates when run.
Based on man page found at:
http://manpages.ubuntu.com/manpages/precise/man8/update-ca-certificates.8.html
Merge branch 'fix/update-ca-certs' of github.com:blueboxgroup/ursula
Merge pull request #525 from blueboxgroup/logging-refactor

logging: Remove logging.conf, use log_dir only
Massive refactor of Ursula

This change is a massive refactor of Ursula. There are effectively no
logic changes, just a reworking of existing code.  Here are the changes
encompasssed:
- remove host group roles (ie. db, network, compute, controller). All
roles should be reflective of the resources they provide; not the host
group that they serve. Having host group roles leaves us with code that
is not composable when we decide to break services out into other groups.
(note: most of the other changes are due to this modification; hence the
massive size of this change)
- move all service installation (ie. /etc/init/nova-compute) to the role
providing the service.  This is no longer part of the "compute" or
"controller" roles.  This is facilitated by a new library:
upstart_service.
- break roles into control and data plane roles. By doing so we can
direct a playbook run at a particular plane. This is especially useful
for new node additions.
- have control and data plane roles become dependent on any common roles
(ie. nova-data and nova-control are both dependent on nova-common). This
helps keep our code DRY.
- Similarly, because services are installed and started earlier than
they had been, have each openstack role manage its own database
creation. This is now an additional dependent role.
- Add tags to each of the sections within site.yml. Again, this helps us
target specific planes, sections, services, etc.
- Move haproxy to its own common role that is flagged by a parameterized
role. We had duplicate code here and it made a lot of sense to squash
this.
- Fix up Vagrant for testing.

!version-major
neutron: ensure sudo access is configured before starting services
neutron: install plugin config in common role and move linuxbridge-agent to data role
Fix Heat brokenness in refactor

Heat should not be on by default, and the proper argument for
upstart_service is cmd; not command.
tls: crt in local folder, auto trusted

Add the OpenStack services crt and the rsyslog logging cert into the
local directory to be picked up.
Any .crt files in /usr/local/share/ca-certificates are automatically
trusted by update-ca-certificates when run.

Based on man page found at:
http://manpages.ubuntu.com/manpages/precise/man8/update-ca-certificates.8.html
fix: add missing openvswitch template