Add AOS docs covering ShmEventLoop & multi-node constructs

Add a few thousand words covering the ShmEventLoop and the basics of how
multi-node systems work.

Still a fair amount to be written on multi-node systems overall.

This also updates/adds to some of the example code we have:

* Add options that allow for experimenting with higher rates & fetchers
  in ping/pong (since I talked about performance benefits of watchers vs
  fetchers in the docs).
* Update the starter_demo script to no longer call `aos_starter`
  `starter_cmd` and to provide the `aos_timing_report_streamer`.
* Add sample code for using the `ServerStatistics` clock offsets.

This change is primarily meant to put factually accurate and clear
information into the docs, and less so about getting perfectly styled
prose.

Change-Id: Ieff45b0ef45e3390e0f98630a65651028206a9f0
Signed-off-by: James Kuszmaul <james.kuszmaul@bluerivertech.com>
diff --git a/documentation/aos/examples/BUILD b/documentation/aos/examples/BUILD
new file mode 100644
index 0000000..f224409
--- /dev/null
+++ b/documentation/aos/examples/BUILD
@@ -0,0 +1,18 @@
+load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
+
+flatbuffer_cc_library(
+    name = "sensor_data_fbs",
+    srcs = ["sensor_data.fbs"],
+    gen_reflections = True,
+)
+
+cc_library(
+    name = "clock_offset_reader",
+    srcs = ["clock_offset_reader.cc"],
+    hdrs = ["clock_offset_reader.h"],
+    deps = [
+        ":sensor_data_fbs",
+        "//aos/events:event_loop",
+        "//aos/network:message_bridge_server_fbs",
+    ],
+)