Exercise: refactor static_pages_spec.rb
Exercise2: test the link on the Home page
Create User data model

Create User data model via "bundle exec rake db:migrate"
Add a test for User model's attributes
Add validations to User model

- Add validations for name and email on User model
- Add tests for the validations
Add length check to User.name

- Add length limitation (up to 50 characters) to User#name.
- Add a test for the check above.
Add email format validation and its test

- Add a validation for email format with regular expression.

- Add a test for the validation.
Add a uniqueness validation and its test (quasi).

- Add a validation for uniqueness on model/user.rb
- Add a uniqueness test to user_spec.rb
Perform migration for adding index to User model's email attribute
Add a before_save callback to User model to make email lowercase

- Make email address all lowercase to avoid the case when database index is case-insensitive.
Add bcrypt gem for password encryption
Perform migration for password_digest column in User model
Add test for password and confirmation plus secure_password implementation
Add authentication test to user spec

- Perform authentication test for has_secure_password
Finish User model and its test

- Finish User model
- Finish the test for User model