Is the hash of the coinbase transaction needed for the merkle root?
You make your list of transaction hashes(without the coinbase transaction, as you haven't mined the block), 


This is where the problem in your understanding lies. The coinbase transaction is generated before the block is mined, not afterwards, because it must be included in the list of transactions just like all the others. It is the first transaction in the block, and its hash is used in exactly the same way as all the others when constructing the merkle root.

Once the coinbase transaction is created and the merkle root calculated, then the nonce is varied and the block is mined.


  Does a1+b1 mean that you perform addition of the hash values or that you just append the two hashes together?


Append the hashes, not add them