Fixed restore to wait for full mysqld shutdown before attempting restart

Fixed the issues where after resetting the root password, the
innobackupex strategy was not waiting for the mysqld process to shut
down completely before attempting to restart it.

Fixes bug 1190735

Change-Id: I31524451a44b6e8728eb4ec4285643b69ce13d0e
Adding support for encrypted backups.

We'd like to enable the backups that are taken and stored as files in Swift, to
be encrypted. We'll add some new config flags, to mark whether or not
encryption is enabled. At this point, the encryption key will also be stored as
a config value. When configured to encrypt, the whole process will be streamed
to/from Swift, doing backup -> zip -> encrypt -> Swift and Swift -> decrypt ->
unzip -> restore all during streaming, so we don't use up more disk space than
needed.

Blueprint: encrypted-backups
Change-Id: I05447306f4249bfd8e02de7b008ebda3387b2fbd
Changed instances of the name reddwarf with trove in the README

Updated the README file to reflect the name change

Change-Id: Id2e62ca47c5ac4bcf4245409ac5b63a724eb98d4
Change server exceptions to show less details

Internal exceptions were dumping error messages raised by
arbitrary python calls and potentially revealing sensitive
details.

The message for all 500 errors is now::

    Internal Server Error. (<UUID>)

The original exception details are written to the log files. The
UUID can be used to reference the individual 500 error in the log.

Change-Id: I57e13a182fd868a1f45419b51d08fe744d650e5f
Fixes: bug #1189673
Merge "Fixed restore to wait for full mysqld shutdown before attempting restart"
Merge "Adding support for encrypted backups."
Merge "Change server exceptions to show less details"
Merge "Changed instances of the name reddwarf with trove in the README"
Fix faulty 404 errors when requesting bad versions

The problem came down to the `_dispatch` method of the openstack
common wsgi router object. When a match was not found it returned
a webob 404 exception directly rather than allowing it to be
wrapped in a serializer.

The fix involved extending the `Router` object and reimplementing
the `_dispatch()` method to use the `Fault` object that serializes
exceptions.

Change-Id: I24a590f65ff655b25cfd7d84786df3055af701f1
Fixes: bug #1174960
Add trove.egg* entry in .gitignore

There was already an entry for reddwarf.egg*, but this is no
longer valid after some of the name changes.

Change-Id: Ib348879a2e22cb44dc50de34961ce18b1a2ce576