completely redone layout, button handling