refactored DPadControl and ABXYPadControl into ButtonPad (act II)