Bitcoin "addresses" are unique. They are derived from several rounds of hashing functions on the private key of of a public-key encryption pair. Addresses hold some bitcoin balance amount, which is recorded to 8 decimal places. Bitcoin transactions move some amount of balance from one or more input addresses to one or more output addresses. The private key is required to digitally sign a transaction, so whoever knows that key, can spend the coins they control. Bitcoin "wallets" are files that contain as many keys as needed. Since they are 256 bit keys, one file can hold as many as you need.
Transactions are broadcast across a peer-to-peer network. They are collected by "miners" into "blocks" who attempt to find a low-valued hash for the block by varying the random number, where the data being hashed is [hash of previous block + hash of current block's transactions + random number]. How low the hash value needs to be is adjusted so the whole network finds one every ten minutes on average. Whoever finds the hash value first broadcasts the new block to the network, and everyone running the software updates their copy of the "Block Chain", the set of all blocks containing all past transactions.
Thus everyone has a complete history of all transactions, and every bitcoin amount can be tracked across all the transactions it has been involved with. Each block has a special "coin generation" transaction, which creates 25 new coins, and sends them to the miner's own address. Those 25 coins are worth $14,000 at today's rates, which drives the whole mining operation. Miners compete to find the next block, and claim the 25 new coins.
Since blocks are hard to create, and each block contains the previous block's hash value as data, they form a chained history which is effectively impossible to edit. Any change to any data invalidates the hash recorded in the next block, and every one after it. That is the innovation contained in bitcoin: digital data you can't edit. It is highly useful for recording financial transactions, but it can also be used for any other kind of data you don't want to change.
So not only does everyone have a copy of all past transactions, nobody can change them, because that would take all the computation power consumed since the point you want to change, and all the computation power is busy writing new blocks to earn the rewards of new coins.