Mod9 and Mod10

This pull request is for both Mod9 and Mod10. It includes the following assignments:

1. Assignment #2: Write integration test for resetting password

2. Assignment #3: Invite Users

3. Assignment #5: Refactor with concerns

4. Assignment #9: Assignment: Use Mailgun to send out emails

5. Assignment #15: Use sidekiq to send emails from background jobs

6. Assignment #18: Set up production server