Keep leading zeros when parsing a path
Allow keys to keep leading zeros when parsing a path. Paths like
"foo.000.bar" were turned into ["foo", 0, "bar"] resulting in a
different structure after setting values in the data container.
The key is now only converted into a string if the value is numeric,
and has no leading zero.