added validations and factory girl