Added a ton of functionality and error handling and UI and pretty much did the rest.