Use strings and not symbols as keys for hashes in migration scripts

I had a failure for one migration (while migration a role, not a
proposal) because of this.
Use new synchronization helpers to avoid races when deploying with HA

There are a number of possible races when deploying nova for the
first time:

 - when creating of the database / database user
 - when registering the endpoint and creating users in keystone
 - setting availability zones for compute nodes
Manage nova-controller services with pacemaker

We create the primitives/group/clone resources (protected with
crowbar_pacemaker_sync_mark) and we use the
Chef::Provider::CrowbarPacemakerService service provider.
Update for changed attribute for neutron HA
Merge pull request #340 from vuntz/fix-migrations

Use strings and not symbols as keys for hashes in migration scripts
Merge pull request #341 from vuntz/sync-marks

Use new synchronization helpers + manage services with pacemaker
Merge pull request #342 from vuntz/neutron-update

Update for changed attribute for neutron HA
Run crowbar-nova-set-availability-zone command in a delayed notification

Until now, we were running the crowbar-nova-set-availability-zone calls
as part of the chef run, which resulted in a loss of nova-related
notification if the calls ever failed. This could result in services not
being restarted after a config change.

So instead, we use the same trick as in the neutron cookbook and we run
the commands in a delayed notification, so that it runs at the end.

This makes us lose the synchronization, but I don't think it's strictly
required here.

(Failures might still impact notifications of cookbooks coming later,
but that's less likely than notifications for the nova services since a
failure here would generally be caused by a change in the nova config,
not by a change in the config from later cookbooks)
Merge pull request #343 from vuntz/delay-az

Run crowbar-nova-set-availability-zone command in a delayed notification
Add insecure flag to keystone_authtoken config when required
Merge pull request #344 from rhafer/keystone_insecure

Add insecure flag to keystone_authtoken config when required
ha: Follow convention for pacemaker resource naming
ha: Do not pass is-managed / target-role meta when creating resources

We are happy with the default values.
Merge pull request #345 from vuntz/ha-convention

Update pacemaker resource names + other conventions for HA
Run "nova-manage db sync" on SUSE when HA is enabled

So far, we were not running it because the init script on SUSE does run
it. But with HA enabled, the service starts at the same time on all
nodes, which may result in failures on some nodes because db sync can't
be run multiple times simultaneously. The end result is that the
pacemaker resource was possilby failing on some nodes, which then
required some manual cleanup.
Increase timeout for crowbar_pacemaker_sync_mark protecting the db sync

The initial nova db sync is quite slow (more than one minute here).
Sort memcache servers in configuration

The order does matter according to the memcache documentation.
Merge pull request #347 from vuntz/sort-memcache

Sort memcache servers in configuration
Update for prepare_role_for_ha_with_haproxy API change
Merge pull request #348 from vuntz/api-change

Update for prepare_role_for_ha_with_haproxy API change