.. more OOness with Button class