ARM-8 Hiera2 W.I.P
Update ARM-8 for dynamic environment support

Currently, static environments may be created by adding custom
`[whatever]` sections to `puppet.conf`, and in the absense of a matching
environment, the defaults will be used. The defaults can be "dynamic" by
the incorporation of `$environment` in the `manifest` and `modulepath`
parameters. This pattern is very widely used for dynamic environment
creation.

This addition updates the armature to indicate how `Environment`
resource defaults could be used to enable dynamic environment support,
and adds a parameter `dynamic_environments` that may be used to disable
this behaviour.
Merge pull request #49 from hlindberg/master

Update ARM-8 Hiera2 with W.I.P
ARM-8 Typo and formatting corrections.

Not exhaustive, just what registered as I was reading through.

Made a few wording changes for clarity where I thought I understand the
intent.
Merge pull request #51 from jpartlow/arm-8-typos

ARM-8 Typo and formatting corrections.
ARM-8 add discussion tags/anchors
Merge pull request #52 from hlindberg/master

ARM-8 add discussion tags/anchors
ARM-8 Added discussion link and fixed two typos in arm-8 index.
Merge pull request #53 from jpartlow/arm-8-discussion-link

ARM-8 Added discussion link and fixed two typos in arm-8 index.
Merge pull request #50 from hunner/arm-8_dynamic_envs

Update ARM-8 for dynamic environment support
Update ARM-8 for `environmentdir` support

As previously discussed in #50, dynamic environments must be understood
from some context available to the puppet master without environments.

This draft removes the `dynamic_environments` parameter and adds a
description of how `environmentdir` may be incorporated to support
dynamic environments.
Merge pull request #55 from hunner/arm-8_environmentdir

Update ARM-8 for `environmentdir` support
ARM-8 W.I.P add tentative goals, var bindings, improve env handling

This commit includes:
* Tentative goals and non goals
* Start of motivation for some goals
* Improved way of handling environments and dynamic environments
* Binding of variables (required since they are delivered by an ENC)
* Typos, and other small adjustments

A second document examples.md is added with user stores (unfinished).
ARM-8 Replace comma with 'or' and allow 'and' as simple nesting.

It was hard to understand that when with comma separated list had
the meaning of "or". To make the language symmetrical, an "and"
is now also allowed with the same effect as a simple nesting.
ARM-8 Clarify that environments.pp file is evaluated on each request.
ARM-8 Add bindingsdir to environment defaults

Bindingsdir is the directory under which bindings are stored.
ARM-8 Add note about parameter unit mapping

Parameter mapping of the type {a => a, b => b} is a corner case
that could be supported with better concrete logic, but it is
expensive as it "destroys" bind map expressions. 

This commit adds a todo note about this consideration.
ARM-8 Add text about binding dependencies
ARM-8 Improve examples, fix typos, formatting errors
ARM-8 Fix typos in examples.