Remove `defaultContext`

As a first step to avoiding singletons. Still hoping to simplify the
API, even though this is a bit of a step backwards.
Do not expose `Parser`

It looks like consumers can get by without it.
Simplify DefineTransformer internals

Reduce intermediate object creation and remove redundant conditional
logic.
Remove state from transformers