Support a timeout on docker client

This gets us slightly closer to being able to remove E501 (ignore line length) from flake8 ignore list

* support a timeout environment variable for the docker-py client
* sort `DOCKER_CONFIG_KEYS` and make them one-per-line (helps avoid merge conflicts when new keys are added, also just easier to read)
* only include python versions in tox that actually work with the current version