Biiiiig refactor
Started off trying to rebase de26abb0
Moved labels to constants - started nudging away at some cleanup. Got confused one million times about the select logic. Refactored it. Put jquery in the bin. Pretty sure we are working. Lets see what eslint thinks now.
Pushing to new branch in case it all goes pear shaped.
Closes #3132708