Add factory girl

Added factory girl and refactored code so that it uses factory girl.
Format wise,

```ruby
user = FactoryGirl.create(:user)
site = FactoryGirl.create(:site)
sign_in_as(user)

# ... exercise

# ... assertion
```