Unfortunately, its the way the IDE does it.
For now, this is the way it'll be, I'm sure they have plans to one day incorporate a full recursive scan.
You will, for now, have to ensure appropriate documentation is included in the library, and also in any examples.
I have written an article describing some of the IDE's behaviors ( including this one ) if you are interested. There are also links to some examples where the IDE can break your code because of these changes.http://arduino.land/FAQ/content/1/3/en/what-does-the-ide-change-in-my-sketch.html