Implemented support for changing Widget appearance and setIcon
By supporting setNewAppearance, we can now change what AP is used to render the widget, with this we are able to emulate setIcon.
By supporting setNewAppearance, we can now change what AP is used to render the widget, with this we are able to emulate setIcon.