The agner:main/1 function actually did several things at once:
* Provided parsing of command-line options
* Provided handling of commands
* Printed out general usage
This change splits the concerns. First, we add a function to parse the
command line options and internalize them. Next, we alter the
command-handlers to match on the parsed variant. The change also
allows us to hoist the start()/stop() invocation to main/1 and only do
that in one place.
Further, the change paves the way for a more consistent option parsing
and argument handling further down the road.