Improvements to testing apps using this gem; Cleanup gemfile

This PR does 3 things:

1. Allows controller tests in the main app to call `controller.sign_in user` in order to test actions that require a logged in user

2. Allows factories in the main app to easily define the openstax_connect_user association:
```rb
association :openstax_connect_user, factory: :openstax_connect_user
```

3. Cleans up the gemfile a bit by moving most of the required gems to the gemspec file
(I left the 2 gems that come in the gemfile by default in there)