Move creation of custom env to environment module

This patch replaces the _nested_environment with a new method in the
environment module.  The intent is to make it easy for some resources
(such as remote-stack) to use its own environment without having to
subclass from StackResource.

Change-Id: Ice0124aa21086788e957eb708b6bc423779202bc
Fix error raising in cfn with wrong output section

There is a situation, when output object in cfn template
has empty body. In this situation we got traceback instead
of error message, this is incorrect. Furthermore, if output
body is a string, we got traceback too. Follow AWS template
format docs (UserGuide), every output object must contain
property 'Value'. So corresponding error should be raised.

Change-Id: I0d7e3e57e479ddb658645b8664bc847866180cda
Closes-bug: #1386332
Merge "Move creation of custom env to environment module"
Merge "Fix error raising in cfn with wrong output section"