Acknowledgements Mikal Hart's TinyGPS for the generic decode approach. tht's initial implementation of a Cosa IOStream::Device.