I'm continuing to work on a validation function. This is challenging because the logic to validate and run the model seems to be interwoven in the model object. I'm creating a new object that extends ICore so that I can write a validation function using the extensions. I don't want to copy all of the logic from the Model. We'll see how this goes.
I learned about generic types today:
public T Load<T>(string path, ITextParser<T> parser)
The T is a placeholder for a specific type that I supply when I instantiate the variable. http://msdn.microsoft.com/en-us/library/0zk36dx2(v=vs.100).aspx