Allow skins to unDraw/reDraw them, when chaging skins.
* The first time a skin is applied to a widget "draw" is called
* When a skin is re-applied, "reDraw" is called (by default it calls unDraw and draw)
* When another skin is applied, "unDraw" of the last skin is called.

For this "_appliedSkin" has been moved from "Button" to "Widget".
Merge branch 'undraw_skin' into development