Fix cross-calling provider overrides

Provider overrides were being applied after __salt__ was added to each
minion module, causing minion overrides to be available on the CLI but
not within __salt__. This commit moves the processing of provider
overrides to within gen_functions, so that they happen before __salt__
is created and thus contain the module overrides.