Implement functionality for functional tests using tempest-lib

Add generic functionality for functional tests using tempest-lib and
create related tox jobs.

Run of functional tests requires:

1) Access to deployed OpenStack with running, at least, Keystone and Manila
services.

2) Defined config options to be able to execute requests to Manila,
Manilaclient should know auth related information like username, password,
tenant_name, etc...

3) Run of functional tests searches for following optional env vars to be set:
'OS_MANILACLIENT_CONFIG_FILE' - name of conf file, default 'manilaclient.conf'
'OS_MANILACLIENT_CONFIG_DIR' - path to conf dir,
  default '%project_dir%/etc/manilaclient'
'OS_MANILA_EXEC_DIR' - path to dir with manilaclient executable,
  default '%project_dir%/.tox/functional/bin'

4) Config sample can be generated by following new tox job:
$ tox -egenconfig
it will create sample in
"%project_dir%/etc/manilaclient/manilaclient.conf.sample"
then just rename it removing ".sample" part and set option values.

To run functional tests use following new tox job:
$ tox -efunctional

To run only some specific tests use following:
$ tox -efunctional manilaclient.tests.functional.foo.bar

Partially implements blueprint functional-tests

Change-Id: I95a4e441d2143e51c54ec4fb47a069a91ed77dd7
Merge "Implement functionality for functional tests using tempest-lib"