[Mac] Support sizing any widget that exposes a sizeToFit selector

Previously we special-cased NSControl and NSBox, but it appears that
sizeToFit is peppered throughout the Cocoa api, so let's make things
simple and just call it if it's there.
[GTK] Fix performance issue when filling a path with a pattern that has alpha
Updated test images

Looks like latest cairo has some slight changes.
Fix build.