Protein Threading for Genome-Scale Structural Analysis