added setArrayField(), ValidationInterface, and PSR-2 changes