Merge branch 'development' into tasks

Conflicts:
	smart.lock
Merge branch 'development' into tasks
Merge branch 'development' into tasks

Conflicts:
	server/publication.coffee
Renamed migrations.
Code review feedback.
Merge branch 'development' into tasks

Conflicts:
	.meteor/packages
	lib/documents/accounts.coffee
Wrapped check calls in validateArgument calls.
Commented the code as part of code review.
Removed dependencies between jobs.

We are not really using them. We are mostly using that all jobs relate
to the same publication. Moreover, this now allows that spawned jobs
are processed immediately (if there are multiple worker instances) or
at least that if parent job fails at the end (or process is killed),
spawned jobs will still be done.
Refactored code and fixed edge cases.

This is a followup to #520. validateArgument arguments were switched in
order so that it is possible to write Match.Where condition function
without parenthesis. Moreover, in set-role-for-group and
set-role-for-person there should still be check.
Merge branch 'development' into tasks
Updated to new validateArgument.
Allow canceling and restarting jobs.
Now publication data is available on publication jobs page.
More comments.
Check for processed flag only when subscribed.

Otherwise flag is missing when it is not really missing, but
publication was partially loaded before (for example, from search
results).
Automatically cancel stalled jobs.
Merge pull request #574 from peerlibrary/tasks

Job/tasks worker
Merge branch 'development' into connection

Conflicts:
	client/publication.coffee
	server/publication.coffee