Use OmniAuth::Identity for authentication

- create Identity model to keep password information
- add info columns to users table: nickname, location, phone
- create Authentication model as map between User and Identity
- add #current_user= helper to Cactuar
- redirect to /auth/identity when login is needed
- create Identity and Authentication on signup
- rename /login to /auth/:provider/callback for POSTs
- treat /auth/failure as cancelled login
- remove save! method in Approval and User, since it's only needed in
  testing
- rewrite Cactuar tests to use stubs instead of FactoryGirl
Use 'developer' OmniAuth strategy by default

- Turn on 'identity' OmniAuth strategy in config.ru
- Add more info fields to identities table
- Turn off 'nosniff' header as workaround for OmniAuth::Form bug
- remove signup actions in favor of identity registration through
  OmniAuth
- create User and Authentication after creating an Identity
- add Identity#persisted? to make identity registration work properly
Forgot to add username as field to identity provider
Change Identity#uid to return username