[golemfactory/golem] Docker for Mac (#3203)

Initial support for Docker for Mac.

— computations are performed on the default VM
— `docker-machine` is no longer used on macOS
— manages VM configuration via a JSON configuration file

TODO:
— move hypervisor and related classes to their own modules
— stop the VM on golem shutdown
You can view, comment on, or merge this pull request online at:

https://github.com/golemfactory/golem/pull/3203

— Commit Summary —

* docker==3.5.0 dependency
* Refactor DockerManager and Hypervisor classes
* Update tests [WIP]
* Minor fixes
* Update tests [WIP]
* Update requirements
* Update tests

— File Changes —

M golem/docker/client.py (5)
A golem/docker/commands.py (84)
R golem/docker/config.py (0)
M golem/docker/job.py (6)
M golem/docker/manager.py (739)
M golem/task/taskcomputer.py (4)
M requirements-win_to-freeze.txt (2)
M requirements.txt (2)
M requirements_to-freeze.txt (2)
M setup.py (2)
A tests/conftest.py (22)
M tests/golem/docker/test_docker_config_manager.py (2)
M tests/golem/docker/test_docker_image.py (11)
M tests/golem/docker/test_docker_job.py (13)
M tests/golem/docker/test_docker_manager.py (333)
M tests/golem/task/test_benchmarkmanager.py (6)
M tests/golem/task/test_taskcomputer.py (4)
M tests/golem/test_client.py (4)

— Patch Links —

https://github.com/golemfactory/golem/pull/3203.patch
https://github.com/golemfactory/golem/pull/3203.diff