Parse each field only once

The get_field and set_field functions accepts parsed fields (i.e.,
Erlang arrays of path components). By exporting the parse_field function
we can halve the number of times we actually execute the parsing code.

BugzID: 42709