Split into separate files and processes but partially broken.
Appears to be working, but have to start hackrf_transfer before the viewer.
Works about as well as you would expect.