SPARK-1937: fix issue with task locality

Don't check executor/host availability when creating a TaskSetManager. Because the executors may haven't been registered when the TaskSetManager is created, in which case all tasks will be considered "has no preferred locations", and thus losing data locality in later scheduling.
Hi @mridulm , another possible change: maxLocality always starts from PROCESS_LOCAL, how about making it start from the highest level of myLocalityLevels? Do you think this makes sense?