Move API parameter parsing from engine to API

API parameter parsing should be done in the API rather than the engine.

Change-Id: I133f419bbb73964b461572d8cadd300233af9c12
Refactor boolean conversion into a separate function

A method to convert API parameters to boolean values will be useful for
parsing the show_deleted API parameter, so create a separate function
named extract_bool.

blueprint stack-list-soft-deleted

Change-Id: I1bce5516b0a8c97d6c08607922968454d94b4406
Use the new oslotest library

There is a new support library extracted from oslo incubator: the patch
starts using it and removes deprecated modules.

Change-Id: I3839af20613ff6ab905dddb8fc4be65654c6e949
Revert "Support ... x-forwarded-for header"

This reverts commit e3679217d1d4b1821f4fa0bd9894b761edfe4ba9.

This commit broke using the heat API when client requests were
behind a proxy (this sets the X-Forwarded-For header)
and effectively causes the heat-api to return the clients
IP address back in the request via the location header.

I believe the original (unapproved) heat blueprint for
this feature should have used X-Forwarded-Host instead.

Closes-bug: #1316754

Change-Id: I1b38ececf59545a3c13c7ebf2c33be97f4332ac0
resource-list fails on a failed resourcegroup stack

resource-list was failing if the stack fails when the ResourceGroup
resource is still in 'INIT_COMPLETE' status.
This change adds a check to make sure that nested stack is not None.

Change-Id: I7cbd5159fb544bda7c38b959c2b1b037bfaa4349
Closes-Bug: #1316705
Merge "Revert "Support ... x-forwarded-for header""
Merge "Move API parameter parsing from engine to API"
Merge "Refactor boolean conversion into a separate function"
Merge "resource-list fails on a failed resourcegroup stack"
Merge "Use the new oslotest library"
resource_get_all_by_stack returns a dict

This changes the returned results of resource_get_all_by_stack
to be a dict keyed by name, instead of a list of resources.

There appear to be zero uses of resource_get_all_by_stack so this
should have no effect on existing code, but it will be a more useful
form to consume the resources in a stack.

This change also prefetches resource data, as for
resource_get_by_name_and_stack

Change-Id: I1cc0ea7cf4852cc2407b3ada9ede7b5f6d1cc682