Is it possible to pass a byte to 8 digital outputs, rather than setting 8 pins separately?
Yes, if they're all on the same port.
I can only find instructions defining pin numbers, not ports, so I don't know how to specify multiple pin numbers in one write instruction
Google "Arduino direct port manipulation"