It's said if we run:
At the end of the contract, the recipient will receive the amount of Ether owned by the contract.
Question 1: How does the contract (and this function) know where the amount of Ether is?
Question 2: In the 1st example here, they have no "suicide", then how the funding is released to the recipient (or beneficiary)?
"payable" enables a function (and contract) to receive Ether, and it can keep track of the amount it receive by using an array, e.g.
mapping (address => uint) balances;
Question 3: How does the contract claim the money it receives?