timeout handling and (hopefully) support for multiple printers