I've cleaned up this driver to closely reflect the OpenBSD umodem driver and address the issue of changing serial.c in a cleaner way. cinap, we talked about having to support multiple serial interfaces on one device, from the looks of it the OpenBSD driver may actually *not* support this. this patch attempts to do so, but I have no such devices to test it with... the nusb/serial driver still needs work. I'm mounting 9p over the serial port and it's flaky, it eventually screws up. I also did this with an FTDI device and that was flaky too, before I made any changes. I'm not sure what's going on, in kprint I see 9p errors when it screws up... dropped data maybe...? the devices I'm working with, Arduino Megas, work pretty well with nusb/serial, both FTDI and with this patch CDC ACM devices, but like I said above, I have no other devices to test this with