Update dock window handling

The dock window is updated to use a free list to reduce flicker when
showing a new window.

This also includes some renaming of dock manager methods.
Update dock title bar icons

This adds nicer windows 8 style icons to use for the title bar buttons
Update the dock area style sheet

This removes the radius borders and the background stipling.

These changes jive better with the new icons, and consume less cpu
resources for rendering.
Update the dock title bar icons
Update the dock item to for title button signals

This updates the dock item to proxy the signals from the internal title
bar. It allows the parent dock container to attach to the proxied
signals without worrying about the user changing the title bar widget at
a later time. It also delegates the responsibility for closing the item
to the parent container.
Remove the rounded corner window mask
Remove unused import
Simplify the destroy method

This updates the destroy method on the base class to do less. It was too
specific for the various subclasses.
Update the destroy handler

This updates the destructor for changes to the superclass.
Support maximize and restore on a dock container
rely on the container to unplug itself on destroy
Update close handling to allow dock item to veto

Update the dock container to only destroy itself if the contained dock
item does not veto the close event.
Handle dock containers which veto close event

Update the dock window to float and restore the geometry of dock
containers which veto the close event.