Does most of the intuitive stuff, left to do: update options on change not on close