Make it clear that the first argument passed is ``pillar``. Also
explain why it makes more sense to return a dictionary of just
the pillar values a particular ext_pillar module is changing or
adding, rather than returning the entire ``pillar`` dictionary.
Note: it isn't documented anywhere that you can use earlier pillar
dictionary values in an external pillar, although that is what the
code does.
Explain how an ext_pillar module works, the conventions for how
and when things are called, and what to return.
The explanation of what pre-existing data is passed to
ext_pillar( pillar, ... ) is based on the current code --- I'm not
sure if the current code is a guarantee that it will happen this
way in the future.