This is just a rough baseline for the higher-level serial handling code and will probably change within the next couple of commits.