Added getTargetLowering() to TargetMachine. Refactored targets to support this.