lots of tiny UI updates