Has any chess engine developed its own opening book? I'm referring to an engine that plays repeated games against itself and human opponents... and uses that data to develop its own opening book.

I'd think computers would have been used to develop new chess opening theory. Has this actually happened historically?
Yes, top level engines' authors generally also prepare an opening book with their engine.
But this process does not only involve computer matches. They make use of both computer matches, GM matches, and machine-learning (which you explain in your question)
This page has an interview about this topic on Rybka 4 book.
A quote from the page:

Q: Your Rybka 4 Aquarium opening book will be released soon. It's clear that you put a huge amount of work into the book.
A: Yes, I put a lot of work into it. It helps that I find it really interesting to analyze unknown positions and ideas from chess books, chess practice or computer games and find my own solutions. Today's opening preparation is very deep. In some cases players know their lines from the opening all the way to the endgame. A less prepared opponent will probably lose his way somewhere in the middlegame against such preparation. Things are looking even worse in computer games - long lines, often 50 moves or more, leading to a draw are similar to pre-arranged draws in human games.
The technical advances mean that opening analysis is very different from what it used to be a few years ago, not to mention a few decades ago. However, even with today's amazing computer tools, the work of the modern opening book author is still very demanding.
My method of creating a strong opening book consists of several steps. Assuming you already have a good database, the first step is the selection of games. Making a good hand-typed book is impossible. The selected games serve as the &quot;raw material,&quot; and generate the initial version of the book. This step may only require a few hours of work. The next step is to fine-tune the move priorities. This is a very time consuming task, and in the case of the Rybka Aquarium book, it took a few weeks.
Testing the book is an independent process. First you run a test and then you look at the results and try to find weak points in the book. After further analysis you may find some improvements, which require updates to the book and another test cycle must be run. This process will take a few days.
Last, but not least is the creative phase of making an opening book. Here you need to find new ideas and get a deeper understanding of the lines in the book. One recurring question in this phase is why engines give a low evaluation, or play badly positions which are very good according to my own understanding of the position. This phase is not only very time consuming, it also needs a lot of creativity and manual interaction and guiding of the engine analysis.