I think everyone has explained it very well. That said, if anyone is interested in a little discussion of opinions, I personally
hate flanking as it is now. It only exists to counter uber-siege, and siege shouldn't be that powerful in the first place.
One idea I've kinda developed, and also seen work excellently in the mod Fall from Heaven, is the ability for a unit to attack the weakest unit in a stack. I think that instead of flanking, horse units should be given this ability - out in the open, with no countering unit, a horse unit attacks the weakest unit in the stack (reasonably realistic with real life flanking too.) So then what you could do is give units like spearmen, pikemen, other horses, and any unit with the anti-mounted promotion, the ability to defend the stack (say once per turn, formation spears/pikes twice). Right now mounted (before cavalry) is already quite weak both due to cost, and being very easy to counter - chariots are supposed to counter axes, for instance, but just adding in 2-3 spears can reasonably defend against almost a dozen chariots. I really like the idea of enough mounted units overrunning stacks in the field - and this even fits with the current Flanking Promotion (because if your first attackers retreat against the spears, and the next ones get their shots at the weakest unit in the stack...

) In fact, I just realized Ballista Elephants do this anyway too, but I think the idea could be expanded in general (and that UU would still have benefits if it bypassed everything altogether).