Fluid: Raising the Level of Abstraction for FPGA Accelerator Development Without Compromising Performance