Improve cli-command-definer syntax.

This makes it "define cli-command *command* (*root*) which is
more natural and Dylan-like.
Merge pull request #4 from waywardmonkeys/improve-cli-command-definer-syntax

Improve cli-command-definer syntax.

I don't truly like the new syntax much more than the old one, but it seems to be consensus.
Make method sideways to silence warning.
Merge pull request #5 from waywardmonkeys/fix-warning

Make method sideways to silence warning.
Get fd from the underlying input stream.
Use stream-console? instead of %unix-isatty.
Merge pull request #6 from waywardmonkeys/streams-integration

Streams integration
Added a 'fail' command to the demo

It signals an error.
This is mostly for development purposes.
Reworked tty handling

Introduced a with-tty macro and refactored some other related bits.
Command condition handling

Also adjusts frontend code to new tty API.
Return status handling for immediate command mode
Missing newline
Support for some more key escape sequences

By now this could use some refactoring for compactness.
Missing comments and headers
Comments
Unsealed extension points in libtty
Rename and restructure

Modules and libraries renamed:

cli       -> command-system
cli-demo  -> command-system-demo
cli-test  -> command-system-test
cli-dylan -> command-system-dylan

The tty module is now in its own library.
Move LID/library files to the library directories.
Rename cli directory to command-system.

This makes it match the library it contains.
Fix error where tty not used, application-controlling-tty not defined.