Configuration, cursors and more documentation.

- Add configuration API and DSL.
- Add more documentation.
- Add syntactic sugar methods for alignment;
  Client applications can use `left` instead of the symbol `:left` as an
  argument to `align`, the same for `right` and `centre`.
- Add focus method to API to focus a named interface.
- Start work on differentiating between all the lines of the interface, and
  those that are currently visible.
- Update bin/vedeu to report a friendly message;
  Previously, attempting to execute this file resulted in a blank screen,
  with only Ctrl+c to exit, because no interfaces we defined or behaviour
  configured. Now a friendly message instructs the user to consult the README.
- Update tests.
- Add example 'lines_app' to explore scrolling content (not finished).
- Add example 'cursor_app' to demonstrate cursor usage.
- Remove `cursor` from interface API.
- Add Cursors class to track position and visibility of all interface cursors.
- Move some system events into respective modules.