Split receipt printing logic into ReceiptPrinter class - single responsibility