Add validations to article model.

Maybe we should expect more detailed error messages so that the user knows why the article wasn't saved.