use XML for all the fetching of Goodreads data

I was getting bogus results from the JSON endpoint, sometimes, and
I'm not sure why.  Even if this doesn't fix it, because the XML
format includes shelves, I can eliminate wrong-shelf books up front
and make fewer requests.