Remove unused elisp generation function
Tidy up and document the `Data.Regexp` interface a little

- provide a `Data.Monoid.Monoid` instance for regular expressions,
  using the sequencing structure.

- export `Data.Monoid` from `Data.Regexp`, for convenience

- document the `Data.String.IsString` and `Data.Monoid.Monoid`
  instances for regular expressions.

- Remove now unnecessary import of `Data.Monoid` in
  `Language.Forvie.Util.Templater`.
Factor out `Control.FiniteStateMachine`, and add some documentation.

- `Control.FiniteStateMachine` now contains the `FiniteStateMachine`
  typeclass (renamed from `FiniteStateAcceptor`)

- Fill in quite a bit of documentation and rename some functons to
  give them better names.