Help with writing a command queueing system for a serial device - C#