L2P: make match_l2p_rule return the match position

Instead of returning true and updating the current parameter via a
reference, this returns the new position on success and nullptr on
failure.

This change allows the function to be called in a scanning mode --
that is, implementing rules like "aCe" where 'C' is a consonant.