I just noticed that when you use Validation::factory() a second time for the same name it overwrites the older instance but keeps connected to the collection of fields through the old Fieldset object, this is confusing. Also people shouldn't use factory() a second time, they should use instance() to retrieve an earlier instance.
How do you guys feel about me going through all the factories and making them throw exceptions when they're trying to create an instance with a name that already exists?
Thus:
Validation::factory('example'); // creates the Validation instance "example"
$val = Validation::instance('example'); // retrieves the instance "example"
Validation::factory('example'); // throws an exception as there already is an instance named "example"