Added roll and refactored CanvasRing, but did not implement changes.