Implement syncing of database tasks

Syntax in clock.rb is:

  sync_database_tasks model: Task, every: 1.minute do |instance_job_name|
    # do work
  end

This creates a "sync_database_tasks_for_model_#{model}" that will run
with the "every:" frequency specified - in this case 1.minute. This task
deletes all previous database tasks stored (relating to this particular
sync_database_task call) and recreates them from scratch to avoid managing
which ones have been modifed/updated/removed.

Note that, to avoid the same database task incorrectly being run twice,
we prevent the database tasks being executed in the same cycle that the
database sync occurs.

You can have multiple sync_database_tasks calls in the same clock.rb
file as the events are scoped to the particular call that set up that
sync.
Don't over-ride default Manager, but dynamically add sync_database_tasks
Remove all code previously added to lib/clockwork.rb

We can add the necessary require to the clock.rb file - and I've updated
the instructions in the README to show this.
Fix spaces
Merge branch 'robisenberg/allow_database_tasks'
Remove tabs
Version 0.7.3