fifth_order() filters and decimates by two, and therefore always shifts
by two input samples for every output sample. However, for the first
output sample, it shifted the state from the previous call to
fifth_order() by only one input sample, and it never used the last
sample in its input buffer.
This is implemented and used in the rtlsdr_pi opencpn plugin
The send tcp, and library queues should be combined and code shared
the aisdecoder should be encapsulated with a context like rtl_ais
to allow for multiple interfaces to work in the same process