A collection of example scripts that use netcat as a backend, each
documented by its own internal comments.

I'll be the first to admit that some of these are seriously *sick*,
but they do work and are quite useful to me on a daily basis.
