Just to inform, lwsdvts.lsp has worked with only single pass... Just checked - after single pass it could happen that some middle vertices, or vertex remains, so I've decided to do (reversecurve lw), do another pass and put it back like it was before with another (reversecurve lw)... And after checking it worked - it removed all that should... So this routine attached to first post is better than PLDiet.lsp by Kent Cooper... So look into first post *.lsp is attached as it had more than 20000 chars...
[EDIT] I've shorten it as some things repeated - it comes less than 20000 chars, so still a file and the code fully correct [/EDIT]
Regards, M.R.