Allow NICellbackground subclasses to override cache key and background tag for cell backgrounds.

Since we allow NICellBackground subclasses to override imageForFirst:last:highlighted:drawDivider:, this change allows subclasses to override the cacheKey and backgroundTag that the cell background uses.

This way the caching facility of imageForFirst:last:highlighted:drawDivider: can be used by subclasses that override that method but call super, or somehow cause the cell background image to be drawn differently in a way not captured by the arguments.