dictionary: split out loading from the commands

This splits out dictionary loading/creation:

  1.  from dictionary file
  2.  from a document on stdin [default]
  3.  from a set of documents on the command line

from the action performed on the dictionary:

  1.  print dictionary statistics [default]
  2.  list the entries in the dictionary
  3.  pronounce entries in the dictionary
  4.  compare pronunciations (TTS/ruleset against dictionary entry)

The rationale behind this is that these are two orthogonal things
and it allows you to do things like:

    dictionary --pronounce TheRaven.epub

and:

    grep -F "Su" names.txt | dictionary --pronounce