How does transaction confirmation work in bitcoin-qt? I suppose, client does not have addresses index with balance on each of them (because there is not such console/bitcoind commands). Looking through all of the blocks - it is too slow.
Transaction processing is a function of mining. Each time a block is found observed transactions become included in the block chain and get one confirmation. The Bitcoin protocol is designed to have an adjusting difficulty to ensure that blocks are not generated at a speed greater than that> This ensures the gradual distribution of new coins into the economy as well. So long story short this is the model that Bitcoin uses and it is one of the few shortcomings of performing transactions.
As transactions occur, the client tracks their effects on its own balances. If you add a new account, it will have to scan all unspent outputs to find any for that account.