use oslo.db module

* Use oslo.db module instead of rally.openstack.common.db
* Remove rally/openstack/common/db

Change-Id: I78e29810f4bf6cc624417744dd74f15ef2281edf
Improve doc/source

Here we enhance the rst docs (used for readthedocs):
* Simplify its index structure by reducing it to only 5 points:
  1. Deploy (engines & server providers)
  2. Verify
  3. Benchmark (scenarios, engine, contexts, plugins)
  4. Command Line Interface
  5. Implementation (all source docs moved here)
* Extend the 'Benchmark' page with info from the "Main concepts" page from Wiki
* Add some introductory text on Deploy & Verify parts based on that from Wiki
* Simplify headings by removing "The" and "Layer"

Change-Id: I04bb553aba04009634272a88a757baa8f2c8c359
Delete commented codes from test_vmtasks.py

There are some commented codes in tests/benchmark/scenarios/vm/test_vmtasks.py,
and
https://github.com/stackforge/rally/blob/master/tests/benchmark/scenarios/vm/test_vmtasks.py#L85
is longer than 80. This patch removes these useless lines.

Change-Id: I7ad67742f19c2009589d8e9d7b171a3c685c53ee
Updated from global requirements

Change-Id: Ic0d8ce65791def4f03e421ad7e1aabe47d7335a2
Use wget instead of curl in install script

Some linux distributions have buggy curl versions, which
incorrect hande redirects.

Change-Id: Ice79958096240446955eb92517dfd41ce9432a5f
Closes-Bug: #1335117
Merge "Improve doc/source"
Merge "Use wget instead of curl in install script"
A test to verify that scenarios in rally-scenarios are correct

Implemented a unit test that takes all the scenarios from rally-scenarios and
tests their correctness after loading plugins from rally-scenarios/plugins

Change-Id: I2af0b67216bdee65a413c8037130cab8e65ac826
Merge "A test to verify that scenarios in rally-scenarios are correct"
Add sla checking

SLA (Service-level agreement) is set of details for determining
compliance with contracted values such as maximum error rate or
minimum response time.

Add two criteria:
 maximum time per iteration
 maximum error rate

Change-Id: I1212bd684831461a7d7e33636d45a6d346e3b574
Blueprint: task-success-criteria
Fix wrong attribute name used for http status

* Use status_code instead of incorrect http_status

Change-Id: I464f28dcdf96542b8d5420133f13d4150da37aaa
Closes-Bug: #1335154
Merge "Fix wrong attribute name used for http status"
Fix creation of ICMP security group rule when using Neutron

Update ICMP allow rule to use the value -1 for to_port and
from_port parameters as ICMP protocol does not have port.

Change-Id: Idc76e156f07b99574b6b77dba803d5a4f823380b
Closes-bug: #1336704
Merge "Fix creation of ICMP security group rule when using Neutron"
Change the default value of scenario_output

Change the default value of the scenario_output variable of the
_run_scenario_once function of the rally/benchmark/runners/base.py
module because there was no errors key in this variable when a scenario
failed with timeout.

Closes-Bug: 1336762
Change-Id: Ieebc2064bcfee3f2bd23ee40394f8117e9096f01
Updated from global requirements

Change-Id: I2ed6046288eb7e91d9e1b0f2e6ad0d703f6e6ddb
Check python>=2.7 before running tempest

* Tempest requires python>=2.7
* Check python version >=2.7 before installing virtualenv for tempest

Change-Id: I89048652d879fd3907f1628887dd6cc1e6e3ba3e
Closes-Bug: #1336209
Merge "Check python>=2.7 before running tempest"
Add abstract layer for benchmark context semantic validation

This patch add abstract layer support for context semantic validation.

Partially Implements: blueprint benchmark-context-semantic-validation

Change-Id: Ib481e4a1019157f5339742b40681a35c76de7080
Ensure temporary results_dir is created

* The results_dir is created to save log files during tempest run
* Ensure it is created correctly

Change-Id: I440e42ca6f8a8858773a09b0a756a0d05235ba3e
Closes-Bug: #1335122