Clean up JS
Convert Autocomplete to use promises
Convert a bunch of callbacks to promises