Add Devise for authentication

We'll assume that authentication is the responsibility of the
upstream app.  We'll require Devise to function upstream and use it
to verify authentication.

This does not include an access-control mechanism.  We'll address
that in another changeset.

KriKri's application controller requires authentication for all
resources.

This adds a KriKri User model that extends the wrapper
application's User model.
Merge pull request #20 from dpla/add-login

Add login
Update installation information in README.md
Merge pull request #19 from dpla/update-gems-in-readme

Update list of required gems in README.md
Fix spec style
  - Singular factory names
  - Use 'let' statements to assign factories
Merge pull request #22 from dpla/style-fixes

Fix spec style
LDP-NR/OriginalRecord persistence to Marmotta

The latest version of Marmotta changed how `Content-Type` headers are
handled in POST/PUT requests for creating LDP-RS vs. LDP-NR.
`text/plain` is now assumed to be an RDFSource.

We should find a good way to create/maintain LDP-NR's with content
types like `text/plain` and `application/xml`, for which Marmotta will
try to create an LDP-RS. This may be an interaction model thing.

In the meanwhile, OriginalRecords are created with a Content-Type of
`application/octet-stream`.
Merge pull request #16 from dpla/feature/or-persist

Persist OriginalRecord
Fix markdown errors in README.md
[WIP] Implement a basic mapper