integrating innerRadius / outerRadius project calls

innerRadius and outerRadius are essentially aspects of each arc.  Thus, project should go through the generateAttrToProjector which is gotten from relevant project calls.
I'm not sure why r0 and r1 are more consistent with svg -- the underlying SVG object is a `<path>`. I would expect "innerRadius" and "outerRadius" are names that the user can more easily reason about.

The forced lower-casing of `project()` targets eliminates errors that result from incorrect capitalization (imagine `project("X", ...)`), and also reflects the reality that the DOM is not case-sensitive.