SerialInputStream and SerialOutputStream implementations

Please look these over and let me know if you'd like anything changed.
I wasn't sure how you'd like them to be interfaced with the SerialPort so I made them wrap SerialPort objects, since that didn't require any modifications to your code.