1. Describe what Unspent Transaction Outputs (UTXO) are.
A UTXO, in this case is a discrete piece of bitcoin. UTXO’s are used as the input for bitcoin transactions.
2. What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
You could use a combination of UTXO’s in your wallet to cover the transaction. If the combined value is not enough, the transaction will be rejected.
3. How would a bitcoin wallet specify the transaction fee when creating a transaction?
The wallet usually determines the fee - hopefully a reasonable compromise between cost (for miner) and time to complete transaction.
4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
You could use a different address every time you send yourself funds ( it would seem that with a SHA -256 system where the output cannot be reverse engineered to the original info, this would not be too concerning ?)