Improve CDC read code

Remove superfluous ring buffer from the CDC read code. The USB hardware already buffers 128 bytes of data, so just read from that on demand.

The result is smaller, faster, uses substantially less ram, and does not do large data copies in an interrupt handler.