OK, so I spent some time on incorporating your volume control changes into the App and Driver. The changes to the App I really didn't change, other than moving some things around. However, I made extensive changes to the Child Alexa TTS driver. I wanted it to use the standard "Audio Volume" capability, instead of custom attributes and commands.
I also changed the logic for how the user preference for volume is used. If defined, it will always send a setVolume command to the Echo device before it sends the TTS command. If it is not defined, then everything behaves exactly the same as it does today. I basically simplified things in a way that I believe most users would want.
With the AudioVolume capability comes some commands that really aren't useful with this Alexa integration...specifcally, volumeUp(), volumeDown(), mute(), and unmute(). I have stubbed these commands out and added a log.debug message to inform the user to use the setVolume() command instead. It's not perfect, but I feel it is the best compromise for now.
New versions are already in my GutHub if you want to take a look.
Thank you for your contribution!