Reduce dependency build time on Travis.
Avoid overriding of serialization methods.
Tweak keystroke and signal watching.
Update Clang installation instructions.
Avoid numbers in configure script.
Adjust configure flag in Travis config.
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.