Specialize branched loops

Continuation of PR #469 inside the main repo.
I think Andrew actually added it when he was writing more tests to exercise this visitor. I've never gotten around to fully understanding what was going on, but without it I think there were linking errors when we were defining a visitor in the test file. Originally I started testing this in SpecializeBranchedLoops.cpp because I couldn't get the test to link when I wrote it in Halide/test with a visitor in there to check my IR. When Andrew started playing with this, he added test/correctness/specialize_branched_loops, which has it's own visitor to check for branches, and added this line to the Makefile.