Adds parameter_groups to HOT specification.

The ability to group and order parameters in the template is
currently missing. This patch allows for a new section of the
template, parameter_groups, to be added by the template author
to explicitly define the expected behavior.

Change-Id: I6d8dc4e6490fbfe9cc45f6ca9cb1ac2826e13273
Implements: blueprint parameter-grouping-ordering
Convert numeric values in instance metadata to strings

Prior to this patch, if the following was in a template as a
"OS::Nova::Server" resource property, the user would see a "BadRequest"
error from the remote API:

metadata:
  a: 1

Fix this issue by converting the value of each metadata entry to a
string before passing the metadata to the novaclient create call.

Closes-Bug: #1260476
Change-Id: I89d60620a3b852a7fcdd2f41135b1f12fbd428d8
Add support for multiple encryption methods

We use only one encrypt() method but it returns the method to decrypt
the data. This way we can change the encryption mechanism but
always have a way to know how to decrypt whatever is stored.

Change-Id: I2315a33105a8766f69d02f0617af39a9dae19ddf
Partial-bug: #1251647
Use property name constants in Ceilometer alarm

blueprint property-schema-conversion

Change-Id: Id0b3877e18cff7c37da1ded3802480c6f5355d7d
Add a schema for the AWS::EC2::Instance Volumes property

Change-Id: I1d2e6854d0fe81d5d0b9272f65502d71a39ad511
Use property name constants in CinderVolume

blueprint property-schema-conversion

Change-Id: I38719a21ec89bbc8b74f57184a83a92c1cfb7dda
SignalResponder, set resource_id in the correct place

If there is an error creating the ec2 keypair, but we have created
a user, we will lose track of the user id and be unable to delete

Change-Id: Ib8704f1054dd16003849700c659d0fea83c13916
Closes-Bug: #1262177
SignalResponder store access/secret in resource data

We need to stop relying on the logic in heat_keystoneclient which
assumes there is only one keypair per user, as this assumption
may not remain true in future.

So instead, store the access/secret key in the DB as resource data,
which is probably better from a performance perspective anyway, and
will also allow SignalResponder subclasses to potentially override
the default credentials implementation more easily.

Change-Id: I7952181f30c94848acf358ab34cf17b6281d43ac
Partial-Bug: #1089261
blueprint: instance-users
wsgi.Resource exception handling to not log errors

In order to not log some exceptions as errors, the
wsgi.Resource.__call__() was modified.
Instead of check if an exception is a HTTPBadRequest or a HTTPNotFound,
now all the exceptions that are not childs of HTTPError are raised
directly, without logging, translation or disguise.
If the exception is a child of HeatException, then the exception is
tranlated but not logged as an error. When this exception reaches the
Fault Wrapper Middleware it is logged as debug.
Some unused, or only use in test, exceptions were removed.

Change-Id: I105eeb74a55dcabc79cd3926dd88da0e19d1e1f1
Closes-Bug: #1231133
Convert Neutron resources to new Schema format

blueprint property-schema-conversion

Change-Id: I4753d5c73bfb01badc39e9e9a6b1343f60c55088
Fix copy/paste errors in API docstrings

Fix some inappropriate docstring, like:

1. "Gets detailed information for a stack" as the docstring for show() in
   events.py
2. "Lists summary information for all resources" as the docstring for
   index() in events.py
3. "Gets detailed information for a stack" as the docstring for show() in
   resources.py
4. "Gets detailed information for a stack " as the docstring for
   metadata() in resources.py

Change-Id: I38fc6a18224d1537bf6981ba60bffc31768b7443
Closes-Bug: #1261615
Simplify update_with_template() method

self.nested() was tested against None at 2 different places in the
method. It is now tested once and if it is None, the method fails
early.

Change-Id: I1296003b359b463126536f3e45c09bd2f22aa18b
Merge "Use property name constants in Ceilometer alarm"
Merge "Convert Neutron resources to new Schema format"
Merge "Convert numeric values in instance metadata to strings"
Merge "Simplify update_with_template() method"
Merge "Fix copy/paste errors in API docstrings"
Remove unnecessary setUp call

A setUp method that just upcalls to the parent setUp is redundant and
can be removed.

Change-Id: Id3acee286e551622f4fcfa29934d18e52f4fd47d
Merge "wsgi.Resource exception handling to not log errors"
Merge "SignalResponder, set resource_id in the correct place"