Renamed 'fsharp-tools' to 'facio'. Updated the NuGet package name, README, etc. to reflect this change.
Renamed FSharp.Tools.Tasks to Facio.BuildTasks.
The NuGet package containing the tools from this repository will now be called 'Facio' (instead of 'FSharp.Tools').
Renamed the BackendUtils project to Facio.Utilities.Backend.
Renamed the LegacyInterpreters project to Facio.Support.LegacyInterpreters. The code in this project will continue using the same namespace it always has to preserve backwards-compatibility with fslex/fsyacc.
Added AssemblyInfo.fs files to Facio.Utilities.Backend and Facio.Support.LegacyInterpreters.
Defined AMP ('&') and TILDE ('~') tokens in the fsharplex parser and lexer.
Added parser rules to allow the AND (&) and XOR (^) patterns to be used in fsharplex lexer rules.
Refactored some testing functionality into a new project, Facio.Utilities.Testing.
More refactoring/streamlining of test case runners for fsharplex and fsharpyacc.
Increase number of cases checked by each FsCheck property.
Added example grammars from Denny and Malloy's technical report on the IELR(1) algorithm so they can be used to implement tests for our LALR(1) parser table generation, and later, for the the IELR(1) algorithm once it's implemented in Graham.
For fsharplex/fsharpyacc -- when a syntax error is encountered while parsing the specification, don't throw an exception and crash -- log the exception and a message about the error at the Fatal level, then exit with a non-zero exit code. This should provide slightly better error messages for the user when they get something wrong.