updating buttons and such