It is now possible to set the user login (instead of
having it hardcoded to "docker"). Also, various actions
have been broken out in separate functions to facilitate
future maintenance.
Many improvements. QR code, fixed page size, better
use of page estate, etc.
Also pdfkit should kind of work now (not quite using
the full page size, but at least it's not utterly
broken like before).