Simplify StringImpl::reallocate

Before the change there were two versions of the 'StringImpl::reallocate'
method, overloaded to accept 'data' output argument of different type.
The 'data' argument's type was used to define the allocated memory size
and a caller had to provide 'data' argument even if it did not this (had
to create a dummy pointer just to be able launch 'StringImpl::reallocate'),
besides initialization of 'data' parameter inside 'StringImpl::reallocate'
was an extra work in this case.

This patch changes the things so that there is only one version of the
'StringImpl::reallocate' method which does not accept 'data' parameter
and instead takes the needed type information from 'originalString' parameter.
The callers who needed 'data' semantics use now the existing "characters()"
methods.

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

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