Converted back to CommandLineParser as there is better ability to
format the Help Text for error messages generated by additional checks
we're now performing after the commandline options have already been
parsed.
Added ability to use profile name within speech
marks instead of profile ID if the user wants. Added
initial set of checks to warn the user when the
command line options are in an incompatible
state (wrong options used together).
Migrated to the latest .Net Framework (v4.8) and changed to
System.CommandLine.DragonFruit for the parameter processing
as CommandLineParser completely altered their required
programme structure which meant something had to change.
Figured using Microsoft's own poduct would be best.