Hello,
For setting up the default voice you can alter the speechd-voices variable.
I don't know enough elisp syntaks to come up with proposed changes my-self, however I have used M-x customize-group <ret> speechd <ret>
and customized my default voice to sk there.
This is what I've got...
speechd-voices
(quote
((nil
(name . "male1")
(rate . 80)
(pitch . 0)
(volume . 100)
(language . "sk"))))
This is the default voice and it applies to all content.
Content meaning all the textual data in the editor where you have no language set (the default).
Default emacs prompts are most likelly coming from emacs localization thus those strings already carry some information about its language. And speechd-el is applying such a language voice when passing these strings to speech-dispatcher for TTS.
Perhaps there is a way to override this somehow forcing the default voice everywhere but I like it the way it's currently working thus I haven't looked into it.
For changing voice and rate on the fly there are C-e d l and C-e d r key bindings or for rate even C-e 1 (slowest) to C-e 9 (fastest) presets.
Unfortunatelly I can't answer your other questions.
Greetings
Peter