I had assumed it was intentional to start the indexes at 1, but there do not appear to any comments explaining why the decision was made, so I guess it could be an accident?

I can make the change you suggest, but won't it break client code?  Everyone will start getting off by one errors in code that has been working for a while...