HardwareSerial Timeout Bug Fix

Fixes the issue with timeouts lasting a second when trying to call read, peek, or available when no data is in the pipe.
I compiled it and never saw an error around it. I will fix this now. I was trying to reduce some of the repetitive code