Added texture caching for drawShape and fillShape.  Caching will only work for GeneralPath instances (not arbitrary shapes) so if you want to draw a shape, you should first append it to a GeneralPath, then draw that for best performance.