When I delete a file, I almost always want the buffer visiting it to go away also. Why keep it around? So I have to do the following steps:

1. M-x delete-file
2. navigate to the file, select it.
3. C-x k <ret>

So I wrote a function to delete the file a buffer is visiting, and close the buffer. Now I do everything in a single logical action:

1. M-x delete-visited-file
2. select the buffer.

Patch is attached.