NVMe is emerging as the standard protocol for communicating with high performance storage devices over the PCIe interface, independent of the underlying storage technology. Being a relatively new standard, there is a distinct lack of tools that can help in evaluating contemporary and future storage solutions built on NVMe. In this paper, we provide the design and analysis of FlexDrive, a software defined, comprehensive, fully customizable emulation framework that builds on the NVMe protocol. FlexDrive provides a number of knobs that allow system architects and capacity planning engineers to quickly evaluate performance implications of a wide variety of storage solutions, including a number of 'what-if' scenarios. We validate FlexDrive against commercially available NVMe SSDs and demonstrate near-perfect correlation. Furthermore, using multiple case studies we show that FlexDrive is able to emulate the performance of a number of existing SSDs as well as extrapolate to future storage devices.