Implemented HardwareSerial and Stream

This actually doesn't need to occur and will error if I call end() from within the destructor because it has already been freed by this point.