Refactorized file validators and use composition instead of inheritance
Merge pull request #39 from chives/dev-validators

Refactorized file validators and use composition instead of inheritance