Use namespaces instead of full classes
diff --git a/scripts/abi_check.py b/scripts/abi_check.py
index 9f99309..5a92a7d 100755
--- a/scripts/abi_check.py
+++ b/scripts/abi_check.py
@@ -24,36 +24,15 @@
 import logging
 import tempfile
 import fnmatch
+from types import SimpleNamespace
 
 import xml.etree.ElementTree as ET
 
 
-class RepoVersion(object):
-
-    def __init__(self, version, repository, revision,
-                 crypto_repository, crypto_revision):
-        """Class containing details for a particular revision.
-
-        version: either 'old' or 'new'
-        repository: repository for git revision
-        revision: git revision for comparison
-        crypto_repository: repository for git revision of crypto submodule
-        crypto_revision: git revision of crypto submodule
-        """
-        self.version = version
-        self.repository = repository
-        self.revision = revision
-        self.crypto_repository = crypto_repository
-        self.crypto_revision = crypto_revision
-        self.abi_dumps = {}
-        self.modules = {}
-
-
 class AbiChecker(object):
     """API and ABI checker."""
 
-    def __init__(self, verbose, old_version, new_version, report_dir,
-                 keep_all_reports, brief, skip_file=None):
+    def __init__(self, old_version, new_version, configuration):
         """Instantiate the API/ABI checker.
 
         old_version: RepoVersion containing details to compare against
@@ -65,16 +44,16 @@
         """
         self.repo_path = "."
         self.log = None
-        self.verbose = verbose
+        self.verbose = configuration.verbose
         self._setup_logger()
-        self.report_dir = os.path.abspath(report_dir)
-        self.keep_all_reports = keep_all_reports
+        self.report_dir = os.path.abspath(configuration.report_dir)
+        self.keep_all_reports = configuration.keep_all_reports
         self.can_remove_report_dir = not (os.path.isdir(self.report_dir) or
-                                          keep_all_reports)
+                                          self.keep_all_reports)
         self.old_version = old_version
         self.new_version = new_version
-        self.skip_file = skip_file
-        self.brief = brief
+        self.skip_file = configuration.skip_file
+        self.brief = configuration.brief
         self.git_command = "git"
         self.make_command = "make"
 
@@ -418,18 +397,32 @@
             help="output only the list of issues to stdout, instead of a full report",
         )
         abi_args = parser.parse_args()
-        old_version = RepoVersion(
-            "old", abi_args.old_repo, abi_args.old_rev,
-            abi_args.old_crypto_repo, abi_args.old_crypto_rev
+        old_version = SimpleNamespace(
+            version="old",
+            repository=abi_args.old_repo,
+            revision=abi_args.old_rev,
+            crypto_repository=abi_args.old_crypto_repo,
+            crypto_revision=abi_args.old_crypto_rev,
+            abi_dumps={},
+            modules={}
         )
-        new_version = RepoVersion(
-            "new", abi_args.new_repo, abi_args.new_rev,
-            abi_args.new_crypto_repo, abi_args.new_crypto_rev
+        new_version = SimpleNamespace(
+            version="new",
+            repository=abi_args.new_repo,
+            revision=abi_args.new_rev,
+            crypto_repository=abi_args.new_crypto_repo,
+            crypto_revision=abi_args.new_crypto_rev,
+            abi_dumps={},
+            modules={}
         )
-        abi_check = AbiChecker(
-            abi_args.verbose, old_version, new_version, abi_args.report_dir,
-            abi_args.keep_all_reports, abi_args.brief, abi_args.skip_file
+        configuration = SimpleNamespace(
+            verbose=abi_args.verbose,
+            report_dir=abi_args.report_dir,
+            keep_all_reports=abi_args.keep_all_reports,
+            brief=abi_args.brief,
+            skip_file=abi_args.skip_file
         )
+        abi_check = AbiChecker(old_version, new_version, configuration)
         return_code = abi_check.check_for_abi_changes()
         sys.exit(return_code)
     except Exception: # pylint: disable=broad-except