Sync necessary modules from oslo incubator for worker service

Sync modelus: service, periodic_task and related dependencies
from oslo-incubator. Using the following command in oslo-incubator:

python update.py --base rally --dest-dir ../rally --modules \
periodic_task,service

Change-Id: I0b8278404d53a91add7a8cf3876121aad1e497c2
Added a test to check json<->yaml configs equality

Implemented a unit test that takes all the config pairs from doc/samples/tasks/
with identical names (e.g. nova/boot-and-delete.json and
nova/boot-and-delete.yaml) and checks that their contents are identical as
well. Also it tests that every config should have a pair (if there is *.json,
there also has to be *.yaml, and vice versa)

Change-Id: I4c0d185439e2a2c48a801fa8c62c7ed2e80a6031
Merge "Added a test to check json<->yaml configs equality"
Merge "Sync necessary modules from oslo incubator for worker service"
Restructure doc/samples/tasks directory

Spread the content of doc/samples/tasks directory to separate folders
for context, scenarios and runners.
Add documentation and samples for runners.

Change-Id: I4394e73060c6c97fae7bcf7039674041d43917e8
Periodic runner refactoring

  'preiodic' runner renamed to rps (runs per second).
  Extensible pool of multiprocessing.Process was implemented instead
  of using constant length multiprocessing.Pool. That should decrease memory
  usage on large iterations and related errors.

Change-Id: I6e367ea30d89d5d0e7ba212ed22e8658421ac9bd