Use rules_pkg to create distributions (#234)

This adds a packaging target to create a Bazel Federation-compliant distribution.
diff --git a/python/BUILD b/python/BUILD
index 42679ee..cb092f8 100644
--- a/python/BUILD
+++ b/python/BUILD
@@ -28,6 +28,15 @@
 
 licenses(["notice"])  # Apache 2.0
 
+filegroup(
+    name = "distribution",
+    srcs = glob(["**"]) + [
+        "//python/constraints:distribution",
+        "//python/runfiles:distribution",
+    ],
+    visibility = ["//:__pkg__"],
+)
+
 # ========= Core rules =========
 
 exports_files([
diff --git a/python/constraints/BUILD b/python/constraints/BUILD
index b93c215..969c867 100644
--- a/python/constraints/BUILD
+++ b/python/constraints/BUILD
@@ -16,6 +16,12 @@
 
 licenses(["notice"])
 
+filegroup(
+    name = "distribution",
+    srcs = glob(["**"]),
+    visibility = ["//python:__pkg__"],
+)
+
 # A constraint_setting to use for constraints related to the location of the
 # system Python 2 interpreter on a platform.
 alias(
diff --git a/python/runfiles/BUILD b/python/runfiles/BUILD
index 7db3493..da34778 100644
--- a/python/runfiles/BUILD
+++ b/python/runfiles/BUILD
@@ -32,6 +32,12 @@
 
 load("//python:defs.bzl", "py_library")
 
+filegroup(
+    name = "distribution",
+    srcs = glob(["**"]),
+    visibility = ["//python:__pkg__"],
+)
+
 py_library(
     name = "runfiles",
     srcs = ["runfiles.py"],