Messily refactor command into a class

This IS messy but also removes a lot of duplication.  Additional cleanup steps
should be able to tighten this up a great deal.  Still, it is a start and all
tests are passing unchanged.
Remove Transformer

Currently unused.  Maybe add it back later.
Rework timeseries interface

This major rework of the interface preserves most of the previous behavior but
refactors it into a more flexible set of options geared around input and output
modes.  These are breaking changes and will require a major version bump.

Notably:

The restart option -c has been removed.  Although this option worked for the
most part it never really could reliably restart because the recipient of the
output is the one that needs to dictate where a series should restart.

The pattern of -lower -UPPER where the lower option would be the infinite
series and the upper would be the constrained series has been replaced with
distinct input/output mode plus an option -m that toggles infinite output.
This reduced a great deal of duplication and freed up several letters for other
options.

A method implemented to do what a `Time.zone.strptime` method should do -- ie
`Time.zone.parse` but with an input format.  To be clear this method is a hack
and should probably exist in ActiveSupport.

Testing was generally expanded but more testing and cleanup is still needed.
Add manpage as markdown

A pretty good start.  Still needed is the tooling to convert this markdown to
roff; maybe when I take time to package this up.
Move Utils methods and remove Utils module

This colocates the utils methods to the classes that use them.  Arguably this
refactor should go the other way, but I'm feeling like condensing
functionality.
Rename :time_format option to :output_time_format

Standardizes the naming a bit.
Make all input modes assume -k by default.  Add -K.

This feels better in use.  Also adds the -K option to turn off blocking if
needed.
Ensure -W limits output according to series
Ensure order of -K and input option does not matter
Break on EOF when an input mode is specified

Typically a filter program will exit when stdin closes, which allows pipelines
to close gracefully when the sources dry up.  When an input mode is specified
(ie -AFGgW or -k, which is effectively an input mode) then timeseries acts as a
filter and so should close in this manner.
Merge branch 'master' into cleanup
Add tests for solving for period, start time
Update manpage markdown