Introduce Clockwork for scheduling jobs.  #3127.

I wanted to keep scheduling inside Cases' web workers, but that has a
few problems:

1. It requires locking to avoid duplicate scheduling, which wasn't
   implemented.
2. It doesn't actually work in Passenger under MRI 1.9.3.  The way those
   two components interact prevents background threads from running.

Solution: move scheduling into a separate process.

I'd like to keep the scheduler process footprint very small.  This means
that the scheduler code (if I can help it) will *not* run through Cases'
boot process.

Since the scheduler is just triggering jobs to run in a Sidekiq process
this should be doable, but it may require some surgery to separate
configuration code (which, except for the Rails environment, can be done
without any references to the Rails object) from code that uses said
configuration to modify the Rails object.
Move the watchdog worker to a separate file.  #3127.
SidekiqConfiguration uses definitions from RedisConfiguration.  #3127.
Don't augment Rails.application unless we're in a Rails app.  #3127.

(The clockwork process shouldn't need to have the application
environment loaded.)
Eliminate application dependencies from RedisConfiguration.  #3127.
Clockwork configuration.  #3127.
Run WatchdogWorker in scheduler.  #3127.
Define periodic jobs as workers.  #3127.
Survey.cache_recent.  #3127.

This commit also moves SurveyCache and SurveyCacheWorker out of Field,
because -- while it's currently only used in Field support -- there's
nothing about those classes that makes them Field-specific, and there
*shouldn't* be anything about them that is Field-specific.  (Some other
Cases client could use JSON surveys, for example.)
"periodicity" is an adjective, not a noun.  #3127.
Scheduler daemon and a script to control said daemon.  #3127.

The daemon uses dante (https://github.com/bazaarlabs/dante), which is
not The Standard for Ruby daemonization.  (That's daemons @
http://daemons.rubyforge.org/).

The reason why I'm using dante instead of daemons is that dante offers
far more direct control over pidfile and logfile locations.  (It's also
got only three short source files in its lib directory, so reviewing its
code is not too difficult.)