Added skin.Draw and skin.DrawOver to chose the best drawing function
based and draw the object based on its .type (as opposed to letting the
objects chose and call the functions)

Added CanDraw and CanDrawOver as a temporary glue functions (until
furhter changes are made to the skin selection code...)
Generalized base:draw and added a couple of utility functions. It should
now be flexible enough to handle the drawing of most objects.
None of these objects now need custom draw routines, 
We make use of inheritance and let 'base' and 'skin' handle the drawing
for them.
When removing the draw function this bunch needs to overwrite
GetClipBox.
 
Note that clipping is now implemented in base:draw() via scissors
instead of stencils.
Removed scrollarea.draw; 
and changed scrollarea.type from "scroll-area" to "scrollarea" (for
consitency)
Removed tooltip:draw();
removed tooltip.show as it was redundant - tooltip visibility is now
solely indicated by tooltip.visible
Removed text:draw();
and moved text:DrawText() to skin.DrawText(object)
skin.DrawTextInput now applies the clipping textinput.draw used to...