Docs: more compiler-related documentation
compiler.cfg.*: docs for compiler words
compiler.cfg.*: stub docs for register scheduling vocabs
compiler.cfg.*: initial docs for dataflow analysis vocabs
compiler.cfg.*: more docstrings for compiler words
deques: doc examples
compiler.cfg.dataflow-analysis: generic for configuring the "block skipping"

To accurately record uninitialized/overinitialized stack locations,
kill blocks needs to be analyzed. Now you can make it so by overriding
ignore-block?.
compiler.cfg.stacks.vacant: compiler pass replacing uninitialized for more accurate stack maps

This pass uses a better algorithm for keeping track of all stack
manipulations which means that the stack maps it assigns are much more
precise.
compiler.cfg.stacks.vacant: fix usings and remove commented out code
compiler.cfg.stacks.vacant: sub docs seeded with a stolen comment from uninitialized.factor