IMHO a combination of trash CLI and a smarter shell program that prevents deleting critical paths would do it.
https://github.com/andreafrancia/trash-cli