A UISwitch Alternative that Supports Auto Layout, Resizing, and Visual Customization with Rich State Callback