My comments here are certainly verbose. :-) However, I thought it was safer to start off extremely descriptive and then dial it back from there because of the unique challenge we're all facing: The Islandora developers don't have a Windows testing environment, so there's no way for them to experience the problems that I'm trying to solve. As a result, I thought I should explain in detail the errors that are occurring and where (as well as point to some of the reference material that helped me find a solution). That way, the developers of this library can better understand the purpose of these changes, allowing them to see where my solutions can be improved upon.

That said: I suppose these comments are now in the PR's history, so people can refer back to this commit if they want to get the full story. I'll trim my comments.