recursively expands ${VARIABLES} within the value (w/o refactor)

My editor ate trailing spaces, but it should be clean enough.  Fixes #39.
I'm not crazy about adding yet another loop.

1. loop to split multiline string (`filter` in `_splitMultilineString`)
2. loop to get keys and values (`map` in `parse`)
3. filter any bad gets (`filter` in `parse`)
4. loop over gets (`forEach` in `parse`)
5. **loop to pre-populate (`for` here)**
6. loop to process (`for` below)
7. get object keys (`keys` in `_setEnvs`)
8. loop over keys (`forEach` in `_setEnv`)

All those loops are beyond the score of this change, but how necessary is pre-population? Are recursive substitutions likely? What's an example of one someone might do?