'type' validation is always performed first.

Type validation is performed before any other validation rule which might exist
on the same field (only exception being the 'nullable' rule). In the occurrence
of a type failure, subsequent validation rules on the field will be skipped and
validation will continue on other fields. This allows to safely assume that
field type is correct when other (standard or custom) rules are invoked.

Closes #18.