Drop support for Python 3.4, since cryptography dropped it (#884)

diff --git a/.travis.yml b/.travis.yml
index b58d7cb..5ca11d7 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -21,8 +21,6 @@
     dist: trusty # For OpenSSL 1.0.1 coverage
   - python: "2.7"
     env: TOXENV=py27
-  - python: "3.4"
-    env: TOXENV=py34
   - python: "3.5"
     env: TOXENV=py35
   - python: "3.6"
@@ -39,8 +37,6 @@
   # Also run the tests against cryptography master.
   - python: "2.7"
     env: TOXENV=py27-cryptographyMaster
-  - python: "3.4"
-    env: TOXENV=py34-cryptographyMaster
   - python: "3.5"
     env: TOXENV=py35-cryptographyMaster
   - python: "3.6"
@@ -57,8 +53,6 @@
   # And current minimum cryptography version.
   - python: "2.7"
     env: TOXENV=py27-cryptographyMinimum
-  - python: "3.4"
-    env: TOXENV=py34-cryptographyMinimum
   - python: "3.5"
     env: TOXENV=py35-cryptographyMinimum
   - python: "3.6"
@@ -102,7 +96,6 @@
   # cryptography changes that are beyond our control.
   allow_failures:
   - env: TOXENV=py27-cryptographyMaster
-  - env: TOXENV=py34-cryptographyMaster
   - env: TOXENV=py35-cryptographyMaster
   - env: TOXENV=py36-cryptographyMaster
   - env: TOXENV=py37-cryptographyMaster
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 5c59f38..c971970 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -11,7 +11,7 @@
 Backward-incompatible changes:
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-*none*
+- Drop support for Python 3.4
 
 Deprecations:
 ^^^^^^^^^^^^^
diff --git a/setup.py b/setup.py
index 3e76199..e98c41e 100755
--- a/setup.py
+++ b/setup.py
@@ -77,7 +77,6 @@
             'Programming Language :: Python :: 2',
             'Programming Language :: Python :: 2.7',
             'Programming Language :: Python :: 3',
-            'Programming Language :: Python :: 3.4',
             'Programming Language :: Python :: 3.5',
             'Programming Language :: Python :: 3.6',
             'Programming Language :: Python :: 3.7',
@@ -89,6 +88,7 @@
             'Topic :: Software Development :: Libraries :: Python Modules',
             'Topic :: System :: Networking',
         ],
+        python_requires='>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*',
 
         packages=find_packages(where="src"),
         package_dir={"": "src"},
diff --git a/tox.ini b/tox.ini
index 83601a6..9fe295f 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = {pypy,pypy3,py27,py34,py35,py36,py37,py38}{,-cryptographyMaster,-cryptographyMinimum}{,-randomorder},py27-twistedMaster,pypi-readme,check-manifest,flake8,docs,coverage-report
+envlist = {pypy,pypy3,py27,py35,py36,py37,py38}{,-cryptographyMaster,-cryptographyMinimum}{,-randomorder},py27-twistedMaster,pypi-readme,check-manifest,flake8,docs,coverage-report
 
 [testenv]
 whitelist_externals =