Understanding "arduino.h" and "arduino.cpp"

Actually there is some kind of such in depth information. Unfortunately not for Arduino and not in English. It is found here:

http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

If you want to go the "professional" route: learn how to build from the command line. Learn how to use the Arduino libraries without the "setup" and "loop" but with "main". Learn about version control (git recommended :wink: ). Once you have this in place I am pretty much sure that you will not need such documentation anymore. And you will understand why nobody will write it. I would bet that you will not write it as well.

BTW: my book is an attempt to guide people along these lines. However it is in German. So probably not that relevant for you.