mostly works, only need to do the pipelining, shouldn't be too bad and the client server switching which is basically copy and pasting