Send usage notifications on major stack events

These notifications can then be used for usage/billing/alarming purposes.

Some of the base fields are based on the existing nova fields:
https://wiki.openstack.org/wiki/SystemUsageData

This patch just has the minimum fields needed we can add more as users
ask.

We can also add more notifications as we need:
- automated actions (autoscaling, restart)
- time based .exists notifications

implements blueprint send-notification
Change-Id: I63ad5402037799842643eb642af15b54ef8d7483
Check that the epel repo exists before adding it

The epel repo that contains cloud-init and other packages needed for the
rackspace resource does not always exists. The setup script will fail if
you try to import the repo when it exists because of running the script
with set -e.

Change-Id: If1f912c2e7cbe3ccd58e10d0ea2e1e07b2114b48
RackConnect compatibility for Cloud Servers

Make the Cloud Servers resource aware of the RackConnect automation.
The Cloud Servers resource should wait for the RackConnect automation to
complete before proceeding with the server configuration.  Additionally,
the server's public IP will have changed, so any previously-fetched
public IP needs to be forgotten.

Blueprint rackconnect

Change-Id: I61676ac821695431cdba0d9a7d3b2e009f6ca3e4
Create a guide for scaling out Heat API's

This documentation describes a guide for scaling out the ReST and
CFN API's based on a devstack installation. HAProxy is used as a load
balancer, redirecting calls from CLI to the several API's instances.

Change-Id: I6efe988ce970f2a3aa08f39050f85dc1621e6774
Closes-bug: #1072958
Imported Translations from Transifex

Change-Id: I136e18c33fa05a83fc8098d944eba4a4aa6c72b9
Merge "Check that the epel repo exists before adding it"
Merge "Send usage notifications on major stack events"
Merge "Create a guide for scaling out Heat API's"
Merge "RackConnect compatibility for Cloud Servers"
Imported Translations from Transifex

Change-Id: Ica683a71b00d1adf8a73f8bef56e2078ef1d50ce
Refactor tests to use mock

Refactor some of the tests to slowly move towards using mock
instead of mox

Change-Id: I0f8039b0ccd07c9a1737b229b520f9225484d4b9
Add support for limiting and sorting stacks

This adds support to the stacks index call for limit, sort_keys,
sort_dir, and marker query parameters, allowing users of the API to
retrieve a subset of stacks.

With this commit, stacks are also sorted by created_at DESC by default.

blueprint pagination

Change-Id: Ib20cfae183475ff42deda82168b8b9c8d043ecd0