Make `Environment` a newtype instead.

Signed-off-by: Ricky Elrod <ricky@elrod.me>
Add syntactic sugar for variables in a lambda.

Now:

  (λx y z. foo)

Is equivalent to:

  (λx. (λy. (λz. foo)))

Signed-off-by: Ricky Elrod <ricky@elrod.me>