Flesh out the skin system a bit.

Display object styles may now either be the string name of the factory (if you want all the
defaults), or an object that must have a name property, and may also override defaults with other
properties.

Buttons no longer size themselves based on their skin size. Twas a silly idea.
Skin handles the layout of skin display objects.

Also, skins can control the scaling of their width and height separately if necessary.
Button skin layout and update is more generic.