remove all flight logic from backends
This is a suggestion about how we can keep a cleaner interface between the FlightServer and the various backends. In particular, we should maybe keep all the flight logic and code in the FlightServer itself, and define a clean API for the interaction between the FlightServer and the backends. I think this would make for a cleaner break, and would prevent the backends from having to implement a bunch of flight logic, that could be accidentally implemented differently between backends.