Move validations into a property validationError

Validations are now stored in `validationError`, and can be optionally shown to the user.
Is it kosher to cast an `NSMutableArray` to an `NSArray`?