Improved Environment with Option-based parent and simpler set.
Merge branch 'master' into improved-environment
Use pattern matching for clarity.
Merge pull request #27 from stevan/improved-environment

Improved environment, using Option for parent and a simplified, non-var-using set method.