refactor commentable
included email validation
added model and controller specs
adding commits