My favorite catcher is a Gallade. Teach it False Swipe, Mean Look, Hypnosis, and Sword Dance (to increase False Swipe damage versus resistant Pokemon). Though you'll want to bring some X-Accuracy and X-Defend items to boost Hypnosis pitiful accuracy, and Gallade's terrible Defense stat.
Also for Victini, if you're going for a flawless Victini, a level 29 or 58 Night Shade/Seismic Toss user is perfect. If it survives one level 58 Night Shade/Seismic Toss, or two level 29 Night Shades/Seismic Tosses (without using Endure), then it's got a flawless or near-flawless HP stat.
Victini and Reshiram/Zekrom, it's very helpful to use a 1-under Speed Pokemon as well. Will save you a lot of time in the long run.
I also found that Bisharp is an adequate catcher for anything that's not a Fighting or Fire type.