A much simpler terminology Ethereum should have picked instead of "gas" is the "cycle". Each operation takes a predefined number of cycles to execute. For example SLOAD takes 20 cycles, SSTORE 100 cycles, etc. Then a transaction defines the maximum number of cycles it will need, as well as the ETH per cycle it will pay as a fee. That's it. Basically:
gasCost -> cycles
gasLimit -> max cycles per transaction
gasPrice -> ETH per cycle
The fact you need so much text to explain gasCost, gasPrice, etc, perfectly illustrates my point that their "gas" metaphor is the wrong one. Also as xur17 said, "cost" and "price" are too confusable.