What ADCs match with Supports perfectly on abilities and stats alone
There really isn't a 'perfect' pairing. I'm always going to look really fondly on Leona x Graves and Leona x Draven because both of them have good early game all ins (and because Leona helps Draven get that passive gold rolling quite nicely), I'll always love a good Nami x Cait and a good Janna x Cait because the AA steriods with Cait's long AA range harass just compliments each other nicely.
You have to realize though there is no match made in heaven. Especially because a "perfect match" can be ruined by a good counterpick. Leona x Graves or Draven might be really good for their all in engage, but if you get paired against a good Janna or a good Morgana a good Sivir or someone with good counter engage like Nami a Nami x Tristana lane might just turn around and kick your Leo x Graves around.
More than just lane synergy you want to look at team synergy. You want a good botlane with a team synergy that will allow you to actually do your part in turning around teamfights. You don't want to end up playing that dreamy Nami x Cait if you have a toplane Lissandra and a Yi jungle. I'd much rather go a tank support knowing that I could still make good plays as Leona, Thresh, or Braum in the botlane, but that I could also provide the needed tank/cc in a teamfight to make sure we don't outright lose the game. If you're against a team with a good wombo combo and/or heavy engage, someone like Nami or Janna have a lot more disengage/peel than the Leona you think would work well with Graves.
Janna works really well with more than one AD carry be it a carry jungle or AD assassin mid. Soraka works great when you have a strong frontline and you have high damage champions who lack a lot of sustain. Obviously you don't want to play a very immobile support (like Taric) when your team is full of champions like Ez and Corki who are just going to rush away into the fray and you won't be in range to back them up.
I mean seriously to begin with there isn't a single 'perfect' match up, but focusing a game solely on what statistically goes together in botlane isn't a good idea. It's a lot better to look at where you're needed at a team so that you can actually support them, than to place all of your luck on your ADC being at the mechanical level to carry given your synergy. If you get stuck with a sucky ADC and you picked a support like Braum with a team of casters who don't AA except that one sucky ADC, you're not going to have a fun time even if your ADC could potentially instantly stack his stun.