To achieve these goals we stepped through the application, breaking down the current User Experience, optimizing it, improving the design, and then rebuilding much of the application from the ground up to improve performance, scalability and reusability.