update pytest config (#4463)

* update pytest config

pytest 3.8.0 was just released and officially deprecates some of the way
we do pytest marks. They introduced a new way to do this in 3.6 so this
PR switches to that mechanism and updates our minimum pytest requirement

* update the stubs

* also update wycheproof test config to remove deprecated paths

* don't need this any more
diff --git a/tests/utils.py b/tests/utils.py
index b950f8b..af7f766 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -28,13 +28,11 @@
 
 
 def check_backend_support(backend, item):
-    supported = item.keywords.get("supported")
-    if supported:
-        for mark in supported:
-            if not mark.kwargs["only_if"](backend):
-                pytest.skip("{0} ({1})".format(
-                    mark.kwargs["skip_message"], backend
-                ))
+    for mark in item.node.iter_markers("supported"):
+        if not mark.kwargs["only_if"](backend):
+            pytest.skip("{0} ({1})".format(
+                mark.kwargs["skip_message"], backend
+            ))
 
 
 @contextmanager