issue #1804: User customizable printers

Please don't pull yet, under review.

***Also, this contains @gpazo's PR for CUPS printing: https://github.com/xtuple/xtuple/pull/1797
The check used to be a static "printAvailable" as defined in the printer string of config.js but now it's based on the particular modelName (Invoice, SalesOrder, etc).