To do the rounded rectangle where corners can be set individually we need the RoundRectShape.  So since the individual corner type draws a shape I just switch it to a shape type in initRounded instead of an if in drawRounded.

I'm also working on a new "shape" attribute that lets you specify a shape drawable so the Shape type will become relevant.  I also renamed the Shape enum to Type since it was conflicting with android.graphics.Shape once I wanted to use one.