I understand that shields can't use the same data pins, if someone could define "data pins" that would be great.
By saying you understand here, you mean you read that but really don't understand, right ?
It's not that difficult.
If you are using a pin for some function on a shield, you can't use that pin for another function on another shield, unless you lock that shield.
Locking a shield might be done by using a CS, Chip Select, signal or a SS for Shield Select i guess.
I know about SPI communication and how it works and I know that shields can share the SPI pins except for SS or CS, but for example why does the ethernet use pins D10, D11,D12 and D13? are those not the SPI pins that can be shared?
Maybe because that shield has 2 devices on board that both use SPI ?
These are the network chip and the SD card (if used).
So you can't use D10 to D13 to light a LED, or control any other signal that is not SPI.
Please Please Please help ME! I need very specific information here! you are talking to a complete noob at Arduino! Feel free to link me stuff that will help me understand better but do not link me to a general tutorial like the Sparkfun or the freetronics because their is a 95% chance that iv'e read those tutorials!
Snap out of it.
You already understood what this is about, but are making things complicated because you think there is some other reason for this.
It's not that complicated, as a matter of fact this is all very logical.