If you look at the declaration for class LiquidCrystal, you'll see that it inherits from class Print. When you call lcd.print, you are actually calling Print::print, which calls LiquidCrystal::send
You'll need to find a good introduction to that language to really understand this.
That's all for now but I'll probably write an advanced library tutorial soon. In the meantime, if you have any problems or suggestions, please post them to the Software Development forum.