Issue #1 Attempted to reduce the memory footprint

Since the AVR has no downstream path, the downstream data is moved into
its own data struct that only exists on the PIC