Disables interrupts when handling user commands. (main.c)..

This should prevent any race conditions, e.g. writepos being updated during
printing of the buffer, which can cause more bytes than the PC expects to be
sent.

e.g. for binary buffer read, we send writepos=100, and the PC side now expects
100 uint16_ts. However partway through the send, writepos updates to 101, and
so we end up sending 101 uint16_ts, while the PC only expected 100.

This can cause unexpected bytes to sit in the PC's serial input buffer,
causing problems later on.