replace pyasn1 with asn1crypto (#3361)

* replace pyasn1 with asn1crypto

* allow trailing bytes

* fix x509 test

* update CHANGELOG.rst

* fix assert

* make asn1crypto code more idiomatic

* find tag

* final clean-up

* leave trailing byte logic unchanged

* document dependency change

* spelling

* fix spelling
diff --git a/setup.py b/setup.py
index 8419e6a..1b1ff60 100644
--- a/setup.py
+++ b/setup.py
@@ -35,7 +35,7 @@
 
 requirements = [
     "idna>=2.0",
-    "pyasn1>=0.1.8",
+    "asn1crypto>=0.21.0",
     "six>=1.4.1",
     "setuptools>=11.3",
 ]
@@ -61,7 +61,6 @@
     "pytest>=2.9.0",
     "pretend",
     "iso8601",
-    "pyasn1_modules",
     "pytz",
 ]
 if sys.version_info[:2] > (2, 6):