Registering IValidators in container

Enables AbstractValidator<T> implementations to have ctor
dependencies that will be satisfied at runtime.
Fixed broken tests
Removed unused references