Move forward decls in right namespace.
Umbrella commit to checkpoint current work.
Checkpoint source sink work.
Checkpoint current status.
Merge branch 'master' into topic/source-sink-cleanup
Remove obsolete source file.
Checkpoint another round of cleanup.

Also, we removed all exceptions from the event sources. This becomes a general
theme soon: we will eventually get rid of the entire exception hierarchy.
The extra control flow of exceptions is hard to reason about and causes
numerous hard-to-debug mistakes. Instead, we move to the notion of optional
values: the class option<T> includes either a T or nothing upon failure.
Improve signal handling and remove policy.
Cleanup vast::source and vast::sink namespaces.
Tweak cosmetics of asynchronous source mixin.
Restructure and simplify ingestion process.

Segmentizers now have ownership over the sources. This commit also removes the
client-side tracking code: segments have become dumb big blobs that the client
just ships to the server.
Replace "shutdown" with "kill" atom.

Mostly because it's shorter and has the same number of characters as "init"
which is the constructive pendant to "kill."
Fix segmentizer compilation.
Merge branch 'topic/source-sink-cleanup'

* topic/source-sink-cleanup:
  Fix segmentizer compilation.
  Replace "shutdown" with "kill" atom.
  Restructure and simplify ingestion process.
  Tweak cosmetics of asynchronous source mixin.
  Cleanup vast::source and vast::sink namespaces.
  Improve signal handling and remove policy.
  Checkpoint another round of cleanup.
  Remove obsolete source file.
  Checkpoint current status.
  Checkpoint source sink work.
  Umbrella commit to checkpoint current work.
  Move forward decls in right namespace.