CSS Animations: Clamp interpolation of length values to non-negative where appropriate

Previously blending of lengths were not clamped, unless types were mixed in
which case the output of the timing function was incorrectly clamped to be
between 0 and 1.

Also changes the step between from/to to take place at 50% when either of the values
is undefined.

BUG=305067,302068

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

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