Started work on PS::Customer.

  Beyond writing tests, I refactored some of the code that was still
  relying on how the connection handling was initially setup.