Parametered Commands

As mentioned here I have evolved the parameter handling from Command into its own class.

This evening I resolved some build issues that were causing crashes, and tested Commands that are using Parametered. I developed two methods that are used to traverse the parameters to enable copying them out of the class without knowing the names. These functions, GetFirstParameter and GetNextParameter, take std::string references for both the parameter name and the data value, and they use a nebulous Cookie. The idea behind the cookie is that you can traverse the parameters in different functions without affecting other traversals. The Cookie is a typedef to the iterator the is being used for this specific traversal. The functions also return a boolean value to indicate that the parameter name and data is valid, an invalid name and data indicates the end of the valid values and any loop being used to traverse the list of parameters should be stopped at that point.

With these functions the Command::Clone functions work properly and previous functionality is restored.

Subject: