Support for clip path

Adds support for &lt;clipPath&gt; and the clip-path attribute. &lt;clipPath&gt; elements aren't rendered as part of the normal display but if they're referenced in a clip-path attribute then they clip the element that references them.

This implementation uses the CALayer's mask property to do the masking. This is not entirely correct since the definition of &lt;clipPath&gt; requires no alpha blending (except for anti-aliasing) while CALayer's mask property does support anti-aliasing, but most uses of &lt;clipPath&gt; don't contain alpha in their path definitions so this generally won't be a problem in practice. As a side note CALayer's mask property could also easily (and more correctly) be used to implement &lt;mask&gt;. I don't plan to do this however.

The Coins.svg sample in the demos has been changed to use &lt;clipPath&gt; to clip the images over a gray background.
If I understand the spec correctly ... and I freely admit I don't fully understand the clipping/masking! ... then this only applies to SVG, SYMBOL and IMAGE tags?

In which case, this code shouldn't be in SVGKImage, but instead in a helper class (I suggest making a new one called something like "SVGKHelperViewportTags" -- we can move some other bits of code there too) and explicitly invoked by each of those three classes when they're doing their "newLayer" methods.

(incidentally ... I just noticed that SVGHelperUtilties has illegal name. Yuck. Need to rename that one! (anything starting SVG is reserved by the spec...))