Rewrite how site list calculations are done.

Site lists are now calculated in the PreJob instead of at submit
time.  This allows us to be more dynamic in automatically blacklisting
sites and makes changing the available sites less dynamic.

The list of available sites for a given job as an output from data
discovery is transferred as a separate file.