Support for UIControl, more consistent method naming, and ability to use any and all UIControlEvents

Summary:

No longer is this specific to UIButton. This can be applied to any subclass of UIControl, which is great for other interface elements, like UISwitch and UIStepper, but especially for custom ones.

The method naming is much more consistent with UIKit naming. The overall interface is simplified to _one_ method. The header is now documented.

Sounds are able to be associated with all UIControlEvents, not just UIControlEventTouchDown and UIControlEventTouchUpInside.