Move model functionality out of printerpanel.py into a new class, Printer, so we can more easily add commandline driven tests in the future and to help identify code reuse opportunities.