Add .clang-format file
Add inst tutorial/reference manual
Add UntypedConst instruction kind

This will be used by the parser to implement type inference for
integer literals.
Many parser improvements

Specifically, type checking, type inference and support for alphanumeric
instruction names.
Add support for reading models
Many improvements to souperweb tool

Specifically:
 - Use GetSolverFromArgs instead of built-in solver.
 - Timeouts are enforced by souperweb instead of souperweb-backend.
 - Add a few examples.
 - Add some JavaScript to allow for navigating between solutions
   without reloads.
 - Add Redis-based cache (separate from souper's Redis cache) and
   permalinking.
Add Docker recipes for souperweb
Merge remote-tracking branch 'upstream/master' into overflow-instructions