pw_tokenizer: Python package

Add the pw_tokenizer Python package, which is used to manage token
databases and decode tokenized strings. pw_tokenizer can be used from
other Python code or from the command line. Three command line utilities
are provided:

  - database.py: Manage tokenized string databases.
  - detokenize.py: Decode and detokenize strings.
  - elf_reader.py: Read data from ELF files by section or address.

Change-Id: I87b19a8f8433a34a254560fc72e5522a74d5a02d
diff --git a/pw_tokenizer/BUILD.gn b/pw_tokenizer/BUILD.gn
index 5567a7a..4fc79ce 100644
--- a/pw_tokenizer/BUILD.gn
+++ b/pw_tokenizer/BUILD.gn
@@ -94,6 +94,19 @@
   ]
 }
 
+# Executable for generating a test ELF file for elf_reader_test.py. A host
+# version of this binary is checked in for use in elf_reader_test.py.
+executable("elf_reader_test_binary") {
+  deps = [
+    ":pw_tokenizer",
+    "$dir_pw_varint",
+  ]
+  sources = [
+    "py/elf_reader_test_binary.c",
+  ]
+  ldflags = [ "-Wl,--unresolved-symbols=ignore-all" ]  # main is not defined
+}
+
 pw_test_group("tests") {
   tests = [
     ":argument_types_test",