Add engine preview stack with Template and Params

Add support for the engine to return the preview of a stack given a
template and the necessary parameters.  No resource will actually be
created, just returned for visualization purposes.  This allows a user
to know beforehand what will happen to their stacks once they used such
template.

The response is a formatted stack plus formatted resources in it:

  {
      'stack': {
        // stack information similar to a call to stack_create/show
        'resources': [
            // resources similar to a call to resource_show
        ]
      }
  }

For now, grouped resources (any of the StackResource) will just be
returned as a single resource, but the preview will be overridden in the
future to allow for more specific behavior.

Implements: blueprint preview-stack (partial)
Change-Id: I8b862110f00ac0cf31d96a86cbc134df895cc19b
Add API support for stack preview

Add endpoint for previewing a stack as returned by the engine.  The call
is similar to a create_stack call and takes the same parameters, but
will issue a preview instead of a create.  The response will be the
formatted stack plus the formatted resources that would exist with that
template/parameters.

Implements: blueprint preview-stack (partial)
Change-Id: I5fcfa76e741c556a7edf222805b41923344becbe
Merge "Add engine preview stack with Template and Params"
Merge "Add API support for stack preview"