The last four argumens of jot (reps, begin, end, step) can all be
specified or omitted, yielding 16 possible combinations, plus
a few special cases.
Instead of hardcoded values, use names to make the bit patterns
that indicate which values were specified human readable. Decide
once and for all what to do in a single switch statement. Don't
enter said switch when random output is requested since that
simply makes no sense at all.
While there, make the error messages a bit more meaningful and
fix a bogus value assigned to begin for jot -r x - y z that has
been there since -r1.1. All regression tests now pass.
Inspired by David Laight (dsl)'s r1.21 of NetBSD's jot.
"move fast and break stuff" tedu
agreement from deraadt