Handle edge cases in sign_in test helper

The sign_in helper requires FactoryGirl to create a user. FactoryGirl
isn't a dependency of the Gem and we wouldn't want it to be because we
don't want it loaded in production. Raise a more helpful error if
someone tries to use the `sign_in` test helper without having
FactoryGirl.

Additionally remove the hard-coded `:user` factory in favor of a factory
named for whatever the configred user model is.