FTWButton is a UIControl subclass that lets you easily set color, gradient, text, and icon properties for various states and animates between them.