Add ability to add custom parser
ToString for valid parses
ToString for invalild parses