Removed the useReferences property and added hasError method.

- Values are now always passed by reference (for trim and default values).
- Also, the constructor accepts a validator property for the first validator. The default is a StringValidator.