Custom date parsers
These recive the input value, and should return a date, or whatever the mode is
expecting to be in the usual date object. It is possible for it to be another type,
although most of the build in functions would not be useful on it any longer.
Custom parsers need to be named for the mode they run on.