One problem is that 115200 is marginal on a 16 MHz Arduino, and too inaccurate on an 8 MHz Arduino.
Option 1: If only a few fixed speeds can be provided, include 76800 (twice 38400) which is good for both Ardu speeds, with only 0.2% error.
Option 2: Better still, allow arbitrary non-standard baud rates to be requested, select closest actual rate supported (would be nice to echo the actual rate out before changing).
Also: of course it would be nice be able to go above 115200 for speed reasons - say, 250000 baud, which the Arduino can support with 0 error. Or even 500 K or 1 Mbps.