Speedup String#to

Benchmark:
1000000.times { str.to(30) }
          user     system      total        real
old   0.490000   0.110000   0.600000 (  0.607374)
new   0.390000   0.000000   0.390000 (  0.387306)