/// <summary>
/// <para>Class CLAParser provides everything for easy and fast handling of commandline arguments.</para>
/// <para>Usage:</para>
/// <para>1) Create an instance of CLAParser by calling this constructor.</para>
/// <para>2) Define parameters by calling Parameter() as often as needed.</para>
/// <para>3) Optionally: Set variables such as AllowAdditionalParameters and ParameterPrefix.</para>
/// <para>4) Call Parse(), catch all CmdLineArgumentExceptions, and show those to user.</para>
/// <para>5) Call GetUsage() and GetParameterInfo() to create information about using commandline arguments.</para>
/// </summary>
/// <param name="NamespaceOfResX">Pass the name of the default namespace (usually the namespace of main code file Program.cs)<para>[This is necessary so that CLAParser can find its resource files (CmdLineArgumentParserRes.resx, CmdLineArgumentParserRes.de-DE.resx, ...)]</para></param>
public CLAParser(string NamespaceOfResX)
{
CmdLineArgResourceManager = new ResourceManager(NamespaceOfResX + ".CmdLineArgumentParserRes", this.GetType().Assembly);
FoundParameters = new StringDictionary();
WantedParameters = new SortedDictionary<string, ParameterDefintion>(StringComparer.InvariantCultureIgnoreCase);
Enumerator = FoundParameters.GetEnumerator();
ParameterPrefix = "/";
AllowAdditionalParameters = false;
}