AOOSModel: Added constraints
Added a concept of constraint to AOOSModel. Constraints are given to each column, just like properties, but have the
ability to take arguments. This makes it possible make length constraints, match constraints, range constraints etc. As
example the three mentioned constraints are implemented in lib/AOOSModelConstraints.php.
To give a column a constraint simply call:
$model->addConstraint("ConstraintName", "ColumnName", "ArrayOfArgs");
Note that the constraint name is without Constraint in the end, which the implementations of constraints have.
At the moment constraints changes data without giving any notice about this. This might change, but it seems fairly
reasonable not to give any notice.
Example usage is added in index.php
A bit of fixes in AOOSModel was included too.