Cache: Copyright added, time_stats added
Merge branch 'master' of https://github.com/reverbrain/elliptics into io_stats
Cache: time_stats, json, erase_strategy

- time_stats tree refactored
- cache stats conversion to json added
- cache overflow erase strategy changed to avoid writes or reads on
  keys to be synced.
Pytests: Created draft of python binding automated testing.
The draft includes:
Testing default, limits and valid values of elliptics.Config properties.
Testing default, limits and valid values of elliptics.Session properties.
Simple test case for writing object.
CMake workaround for preparing and running pytests.
Monitor: Added REST-like api for getting monitor statistics.
Python: fixed None usage as Id in session.exec_()

Check must directly compare PyObject* to Py_None singleton, because other method
(checking object equality to python::api::object()) involves user defined
comparing/equality operators.
This is the case with elliptics.Id which has __cmp__ method, which
cannot accept None as an argument.
Merge pull request #332 from shaitan/monitor

Monitor: Added REST-like api for getting monitor statistics.
Merge pull request #334 from ijon/fix-python-none-as-exec-id

Python: fixed None usage as Id in session.exec_()
Python: fixed writting out of memory.
Merge pull request #335 from shaitan/monitor

Python: fixed writting out of memory.
trans: randomize route table update: select 5 random groups and read table from one random node from each selected group
monitor: fixed monitor header ifdef decoration
Python: dnet_balancer and fixes
route.py: fixed pep8 warnings, restored neighboring routes which belongs to one node
__init__.py: provided access to elliptics.Route, elliptics.RouteList classes which used by dnet_balancer
dnet_balancer: added script which rebalances ranges in route list.
Balancer: added ability to current route list state without balancing. Moved printing map ids_filename -> node to the end of balancing.
Merge branch 'master' of github.com:reverbrain/elliptics into balancer
Balancer: extended debug logs.
Python: added keeping node inside python elliptics.Session to insure that session will be deleted after node.
Balancer: decreased logs and number of ranges length recalculations. Instead of bisection large range, it devides into 2 ranges one of them with length equal to median and other has the rest of origin range.
routes.py: Sorted percentages by percents.
Python: Fixed pep8 warnings in setup.py. Added dnet_balancer to elliptics-client package.
Python: added ability to clone session.