Allow image caching to be disabled with ImageDecodingStore

This change is to enable the new Skia discardable memory path. In this
new path Skia is managing the image cache. ImageDecodingStore should not
cache images in this case. We still want to cache decoders for
progressive decoding and animtions.

This new method is ugly and is temporary. Once the transition to the
new path is complete all code with image caching can be removed.

BUG=318490

Review URL: https://codereview.chromium.org/111033003

git-svn-id: svn://svn.chromium.org/blink/trunk@163756 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[CSS Shapes] Simplify RectangleShape implementation

Instead of caching an instance of a private FloatRoundedRect (ish) class for RectangleShape's shape-margin and shape-padding bounds, we just compute the shape-padding or margin FloatRect and radii as needed. This reduces the class's footprint a little and it simplifies the implementation.

Removed the private RectangleShape::ShapeBounds class and made its cornerInterceptForWidth() method a static function. Added members for the RectangleShape constructor args, and private getters for their properties. 

There are no new tests because this is just an internal refactoring.

This change is similar to this BoxShape footprint reduction: https://codereview.chromium.org/105063004.

BUG=327838

Review URL: https://codereview.chromium.org/112443003

git-svn-id: svn://svn.chromium.org/blink/trunk@163757 bbb929c8-8fbe-4397-9dbb-9b2b20218538