compress: compress input by encoding repeated characters
	compress copies its input to its output, replacing strings of four or more
	identical characters by a code sequence so that the output generally contains
	fewer characters than the input. A run of 'x's is encoded as ~nx where the
	count n is a character: '1' calls for a repetition of one x, '2' a repetition
	of two 'x's, and so on. Runs longer than 73 are broken into several shorter
	ones. Runs of '~'s of any length are encoded.
	Item    Name         Value
	Item~4 Name~9 Value
	1       car          ~$7,000.00
	1~7 car~: ~1~$7,000.00
	The implementation assumes 73 legal characters beginning with '1' and ending
	with ASCII 'z'. Some non-alpha or numeric characters are used.

	For some reason, the above example interactively does not seem to work: the
	newlines from pressing Enter are not recognized. When taken from a file,
	they're processed, but the output does not complete on a separate line,
	(especially when waiting for input).

	This is a problem using Free Pascal with the original Pascal tools tape, as
	well as ADW and gm2 (Windows 10 Pro 64-bit and GNU/Linux with Bash). The
	example above is thus what is intended, not what actually occurs.