Live update for the headline image's URL and position.

Not strictly required for #23, but still a useful thing to have.

This doesn't propagate changes done in the DOM back up to the text
fields.  That'll come later.  (That is, if it's important and not just
theoretically nice to have.)
Run QUnit tests as part of the CI build.

This could use some reorganization, but it works.  (Locally, that is.
I'm about to find out whether it works elsehere.)
Move Javascript test code out of public/.

Also move the PhantomJS runner under spec/support.

There's probably better places for all these bits of code, but this is
good enough for me.  For now.
Placeholder text for new events and videos.
Increase robustness of banner image/position checking.

Specifically, ensure that nils are represented as zero-length strings.
This ensures that whitespace stripping done later in the step won't try
to invoke #strip on nil.
Do less initialization in the qunit tasks.

This gets rake assets:precompile working again in Heroku.  Spec files
are ignored from the slug, so the bits that load files out of
spec/support cause a LoadError to be raised in the slug compilation
environment.
Don't generate url() constructions for banner images.

An empty URL reference is interpreted as a reference to the current
page; therefore, having url() in the page generates unnecessary
requests.
Track jQuery-File-Upload.  #23.

Also add the submodule to .slugignore: there's no reason to include the
jQuery-File-Upload source tree in the Heroku slug.
Route headline image modifications through a model.  #23.

This is more code right now, but I think it'll pay off when the upload
image bits are implemented.
Write image specs in the headline image editor.  #23.

Also define a "details" motif and share it with the login text.
Use jQuery-File-Upload on the image upload field.  #23.
Scenario for uploading JPEGs and PNGs as banner images.  #23.
UploadsController skeleton and routes.  #23.
Couchdb::Database#{put,get}_attachment.  #23.

Implementation note:

Originally, I wanted these to just be extensions of #get and #put.
Unfortunately I have not yet found a satisfactory way to differentiate
between these cases:

  db.put('_design/abc/x') # puts attachment x on design doc abc
  db.put('_design/abc')   # puts design document abc
  db.put('abc/xyz')       # puts attachment xyz on document abc
Re-enable Javascript unit tests in development.  #23.

A browser provides a much richer and faster feedback loop for running
tests and diagnosing test failures, and when I'm accessing the
application through a browser, it's almost always in development or
production mode.
Response#etag, a helper for reading ETag fields.  #23.
Couchdb::Database#head.  #23.

Useful for detecting the presence of a document, which in turn is useful
for attaching objects to documents.  (In order to attach objects to
documents, a rev must be provided.  The easiest way to get that rev, if
it isn't already present, is to do a HEAD on the document ID.)
Remove redundant documentation in Catalog::Database.  #23.
Reflect changes to the headline image model in the view.  #23.
Update the DOM with new, not old, attributes.  #23.

Also move the url() wrapping into the model.