[CSS Shapes] Add BoxShape and FloatRoundingRect classes

Added the BoxShape class. It's now used to represent shape-outside box values: [margin/border/padding/content]-box. It will be used to represent inset shapes as well. BoxShape depends on a new FloatRoundedRect class, which is a float analog of the existing (int) RoundedRect class.

This is an incremental step towards supporting the new CSS “box” shapes (http://dev.w3.org/csswg/css-shapes/#typedef-box), and the inset shape (http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes).

Note that FloatRoundedRect is essentially a copy of a subset of RoundedRect with int=>float, IntSize=>FloatSize, etc. In the fullness of time, I’d like to make FloatRoundedRect and RoundedRect a subclass of a template class that defines all of the common code.

BUG=319406

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

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