If i had to design one, i'd use a PIC controller and do all the hard work in software:
1> For each number pressed, add an offset to it, and save the number sequence in memory.
2> Check the number sequence that was ACTUALLY dialed, if its 911 (or what ever) dial it at once, otherwise wait for the next number or the user to stop pressing buttons (after 1 button is pressed and a delay of say 2 secs has passed)
3> When the 2 secs delay has been observed, dial the new number.
The dialing is easy enough, search for DTMF on this web site, you should get a few examples.