Add support for negative requirements

This change adds support for false matching of requirements. To make
this useful you can now require all approvals match a requirement or
only one (ie any).

Therefore depreciate require-approvals, replacing with
require-approvals-any and a new require-approvals-all.

Change-Id: I458e677315ccb90d64cd0c0e734951141324a9c3
diff --git a/tests/fixtures/layout-requirement-email.yaml b/tests/fixtures/layout-requirement-email.yaml
index 4bfb733..dadcd6c 100644
--- a/tests/fixtures/layout-requirement-email.yaml
+++ b/tests/fixtures/layout-requirement-email.yaml
@@ -2,7 +2,7 @@
   - name: pipeline
     manager: IndependentPipelineManager
     require:
-      approval:
+      any-approval:
         - email: jenkins@example.com
     trigger:
       gerrit:
@@ -19,7 +19,7 @@
     trigger:
       gerrit:
         - event: comment-added
-          require-approval:
+          require-any-approval:
             - email: jenkins@example.com
     success:
       gerrit: