It is now both easy and inexpensive for an author to self-publish his work, either as a print-on-demand paperback or an ebook; for the former I recommend CreateSpace, Amazon's POD subsidiary, which my wife and I used to self-publish a historical cookbook. Self-published books of either sort can be sold through Amazon, making them easily available to anyone who wants them. Thus two of the functions of a publisher, producing books and distributing them, are no longer necessary.
Publishers also help authors write their books by providing copy editors, locating cover artists, occasionally even providing useful feedback on the contents. But all of these functions can be provided almost equally well in other ways. Copy editors are for the most part self-employed free lancers rather than employees; there is nothing to stop the author from cutting out the middleman, or the author's agent from stepping in to fill that role. The best editorial help I ever got came not from a publisher but from my agent.
There remains one more function—filtering. The fact that a book has been published by a major publisher is no guarantee that it is worth reading but pretty good evidence that it is at least worth looking at. To finish the job of replacing the publishing industry, we need a substitute filter, a way in which readers can find, out of a million self-published books, the top ten thousand or so. My experience so far suggests that Amazon reviews are not adequate for the purpose; the novel that I self-published as a kindle has gotten reviews ranging from four to five stars, but sold few copies. We need something better.
My latest idea is to leverage the Kindle. Have Amazon get permission from Kindle owners to have their machines report, anonymously, on how long the owner spent reading each book on the machine. The longer the time spent, the better evidence that the book was, for that reader, worth reading. The rating algorithm should take account of differing book lengths and ignore books that were never looked at.
To make this work better, make downloading free for the first month, in order to increase the number of people who download each book and take at least a brief look at it. Once the month is up, the book price goes to whatever price the author chooses. A fancier version, probably not beyond the technology, is to make such a free book vanish from the Kindle a month after it is downloaded, leaving behind a link to where it can now be bought.
An even simpler approach would be to leverage the "sample the beginning of this book for free" option that Amazon already provides, implementing it in some form that lets Amazon find out how many of the readers who started the free sample finished it.