Add documentation to TF.
Add missing copyright notice to forty.c.
Change uio_copy to uio_copy_n and add uio_copy.

The new uio_copy copies all data that is available
or fits.
Change struct uio so that it's not opaque.

It is inefficient to always use malloc for streams
when you just want to read or write into a small
memory buffer.
Add part SCRATCH.

SCRATCH is a static scratch space that can be used to
process data from a UIO stream.