Reintroduce rcfiles.

Now they are simply alternate config files, in pants.ini format.

This also re-implements the "overrides" functionality.

This change also modifies how config caching is done. Previously
configs were keyed by the file they were read from. But in practice
code always calls Config.from_cache() with no argument, which
defaults to the regular pants.ini. This leads to dangerous confusion
when config can be read from other files. So now there's just a single
global cached config, which must be set explicitly.