Add Command module.
Derive Eq, Show for Command.
Optimise and experiment with free monads.
Add `Lazy` type.
Use `operational` package.