Are there any thoughts / plans on implementing a "trash" folder for voicemails? I have users who would like to be able to retrieve recently deleted voicemails. My thought would be that it would work like many email systems, where it would keep deleted messages in the trash for some period of time before automatically deleting them completely.

You may or may not want to approach that by modifying app_voicemail - it's pretty gnarly. It might be just as easy to build a voicemail replacement that has your desired feature. We did an example of voicemail in node here: https://github.com/asterisk/node-voicemail

If you are using a database (ODBC) to store your voicemail messages, you can create a sql trigger to copy all messages in a another table. That's what we did. Users can retrieve their voicemail messages up to 30 days via a web interface.