Can I ask some questions on mining?
Sorry missed this while I was on Christmas break.
Presumably there are hundreds if not thousands of people/nodes mining Bitcoin?
yes, though by now it is mostly done professionally at large scale. You need to have cheap hardware costs and cheap electricity to even hope for it to be profitable.
Based on the 10 minute blockchains then only 6*12 , 72 bitcoins are awarded every hour? ( Excluding fees)
6*12.5 actually, so 75 new bitcoins come into existence and are awarded every hour on average.
The award of the bitcoin is given to the node that solves the hash problem first, so if a node has more CPU power, are they guaranteed to win more often than someone with lower compute power?
In the short term there may be variance, but yes in the long term nodes should solve blocks at a rate proportional to the computing power they are dedicating to it. Think of it as if you and I are entering a raffle every week and you buy twice as many tickets as I do, over time you should win twice as much as I do, but in the short term through luck I could win more than you.
If there something in place so every miner eventually knows they'll win or is it all luck/compute power?
No guarantee, It's luck/compute power, see the previous raffle analogy. What small time miners tend to do to lessen the effect of risk is combine their power together into pools, then divide the proceeds of the blocks they mine proportionately among themselves - similar to a lotto pool.
Why has the fees for bitcoin gone up? Is it tied to the amount of work a miner/node has to do to confirm a transaction? Is there a defined formula for it?
Fees are unrelated to mining work. Each block (every 10 minutes) can currently only contain up to 1MB of data. So even if miners have a lot of pending transactions from users, they may only be able to include a subset. It's at their discretion which they include, but logically they tend to include the transactions with the highest fees, as they get to keep those. Fee setting in wallets is currently a bit messy as it can be difficult to predict what fee will be needed to be in a future block if the number of transactions is fluctuating a lot. Most wallets have a slider letting you move along the scale of low fee to high fee depending on how urgent you want your transaction confirmed.
One interesting and non-intuitive thing to note here is that the size of a transaction in bytes is what's relevant NOT the amount of bitcoin being sent by that transaction. The size in bytes is determined by the number of inputs (how many transactions the coins being spent were received in) and the number of outputs (how many different addresses the transaction is spending to). It's possible a bitcoin transaction sending 0.001 bitcoin could have a higher size in bytes than one sending 100k bitcons. So fees are often measured in satoshis per byte.
You can see a history of the average transaction fees here:
https://bitcoinfees.info/ which really shows how it's a rather recent symptom that there is frequently a backlog of transactions and therefore people choosing higher fees to get priority.