wget is implemented and working

done:
=====
* refactored a bit of pre-existing code
* added classes to support "replay" inheritance,
  including the first non-abstract class,
  which implements the interface using 'wget'
* reorganized the 'preferences' dialog using tabs
* some (basic) testing:
  - pointed the 'wget' executable to a mock utility,
    that simply echoes it's command-line arguments
    to an output file.. for inspection.
    * all of the argument values that contain characters
      which would require that they be wrapped in quotation
      marks are properly quoted (by FF.. nice!)
  - pointed the 'wget' executable to a proper binary,
    ran a few sample downloads:
      * incomplete downloads are resumed
      * previously completed downloads are ignored (not clobbered)
      * all data from the original request is being included in replay:
        - headers
        - post: method and data
      * default 'wget' options are set to respect 'content-disposition'
        response headers.. so the filename saved is the same
        as the filename prompted by FF during initial download

to do:
======
  * next commit will add support for 'curl'.
    it may be helpful (later) to do this step in isolation,
    since the diff will show what is needed
    to implement any additional external download tool.