Where is the code that specifies when a block is released? I'm not sure how this exactly works. So roughly every 10 mins a block is released to the network. How is this done?

Does my bitcoin client signal this? Would that mean in theory if there was just one user, one client, you would just mine alone?
Every time a block is successfully mined, the miner releases it immediately. The mining difficulty is adjusted over time to keep the average block release rate at roughly ten minutes. Successfully mining a block is so difficult that all the miners in the world only successfully build a single block, on average, once every ten minutes.