unfortunately cycles is far from a good tool for this job. Nor does it have a good way to fake caustics like biased renders (I hope they implement a way for us to do photon mapping and disable raytraced caustics).
If you are looking for unbiased caustics, you are better of with something more physically accurate. It will be much better and faster.
Attached I show the solution I know. you use mesh lights (I don’t think there is a way for spot lights or point lights to cast caustics) and you let them render for a looong time. This image has whooping 5000 samples and it is still ugly and noise.
It might be a good idea to disable sample as lamp, since all lighting will have to be done by brute force anyway. It might get more accurate.
Sad, but you will have a lot of trouble making caustics in cycles. You will have to use brute forced lighting (disabling sample as lamp) and that is much, much slower and noisier.
But I hope to find a better sollution. For instance, if you only want a wall mirror, you might have 2 scenes with 2 lights for each side. I guess it would still be much faster then brute force.