Fixes #412

Pages can now register a callback (there may be a better way to do this)
to be executed in the stale output check. That callback is expected to
be a `Proc` or a `lambda` (we're calling `call`) and takes the page as
an argument.

It is also HIGHLY recommended that extensions which iterate over the
site.pages variable have some sort of short circuit for sites with lots
of pages, as the pipeline is now reloaded and re-run on page change.

We support reloading the code for extensions in the _ext directory and
running the pipeline and output gen again.

We also support reloading yaml files now.