Optimize sync_all

This commit stores the environments read by reading the top file in
__context__ so that the top file does not need to be read once for each
sync doing in salt.modules.saltutil.sync_all().
Sync custom types before executing highstate
Avoid UnboundLocalError when there is no top file
More optimizations in HighState class

We already have load_dynamic() which runs a sync_all, I didn't catch this
in my previous commits. Also, load_dynamic() refreshes the modules
twice, once by calling the sync_all with no refresh argument (the
function defaults to refresh=True), and once by invoking
self.state.module_refresh() before the function exits. Passing
refresh=False removes one of the module refreshes, which should speed
things up a little more.
add acceptance_wait_time to SAuth system
Merge pull request #13029 from gtmanfred/develop

Revert "Merge pull request #13012 from the-control-group/bugfix/check_li...
Merge pull request #13011 from terminalmage/issue9730

Optimizations for saltutil.sync_all and state.highstate
Adding the ability to invert a range and have the job run when the current time does NOT fall into the specified time block.
Merge pull request #13030 from garethgreenaway/not_in_range

Addition of invert ability for ranges in schedule.py
Merge pull request #13015 from jacksontj/acceptance_wait

add acceptance_wait_time to SAuth system