Example commands

You probably don't want to deploy this, but it shows how to use the
toybox infrastructure and provides templates for new commands.

The hello.c and skeleton.c commands provide templates: hello.c is clean and
simple, skeleton.c demonstrates the option parsing infrastructure and having
multiple commands per file. When writing a new command, copying hello.c or
skeleton.c to the new name may provide a good starting point.

The demo_* commands demonstrate infrastructure.

Other commands in here are obsolete versions still in some recent Linux systems
(and often still in posix), but not really useful on modern systems.
