clean up button bidi
Finish Button implementation, and make it extend _Invalidating.
It gets rid of code duplication due to dependencies between label, showLabel, title, and textdir.
clean up button bidi