A simple and native implementation of binary tree

To track the topology of nova-compute node which has the specific
volume, we must use some graph(or tree) data structure to make it
easier. At the current version, we choose binary tree structure.

* new node can be added in tree or node can be removed arbitrarily, but
  each node must have at most two children and exactly one parent(except
  the root).
* the node remove function need to be optimized to keep the tree more
  balanced.
Add the voltracker domian sepcific policy enforcer

Most of the code is port from glance.
Copy some useful tools from oslo-incubator
Add the api-paste.ini file to define the WSGI apps

To make performance test easier, we now use the unauth-context to avoid
the keystone authorization.
Update the required packeges list.
Update the required openstack common modules list
Add utils to track the version information

Openstack provide pbr to make version management easier. To get the
version string of package, what we need to do is only calling the
related function.
Remove the pbr version requirements in setup.py
Merge branch 'master' into add_api