More specific objects; more common functionality.

- pw.core now has separate Cli and Store classes
  for handling the CLI functionality and datastore
  functionality separately.

- Cli instances have an instance of Store and a
  new run() method, which DRYs up the similar
  functionality that appeared in all the interactive
  programs. Finally, there is a new static method
  that provides calling applications with the
  basic CLI related options in an initialized
  argparse parser.

- Store objects now own the field-related
  properties, as well as the load(), save() and
  find() methods.

- update the rmpw, pw, mv and editpw programs to
  take advantage of the new functionality--base
  arguments, interactive loop or terminate flow--
  and properly use the new Cli object in their
  process_func closures. Cli instances now have a
  pw_store property, which contains the password
  storage object instance.

- update the buildpw, chow, and dumppw program to
  use the Store object, because they do not need
  the interactive functionality provided by the
  Cli object.