Ive been looking around at the prices for bitcoins at various different exchanges and they all seem to have slightly (or wildly) different prices, why?
Economically speaking, this can only happen if the expected cost and risk in arbitrage outweigh the expected profit. Arbitrage, in this case, would be buying coins on a cheap site and selling on an expensive one. The risk comes from the high volitility and long confirmation time. In the hour or so it takes to transfer the coins from one site to the other, it's very possible that the price could have dropped enough that you end up losing money. The aforementioned risk is why no one has tried to take advantage of the price differences and (as a result) equalized the price.
This behavior is not unique to Bitcoin, but you can see it more obviously because the volatility is very high.
The price is also different on Forex for say EUR/USD conversion depends on which market you are trading, but because volume is so high and volatility low we almost don't notice the price difference.
This has been answered earlier, nevertheless, on different exchanges there are different traders who set the price, here I will use an altcoin to elaborate it more clearly. When a new coin is launched on exchange it has no value people come and deposit their coins into the exchange and they set a selling price if someone is interested to buy that coin for that price they do and this sets the price of a coin. When thousands of people start trading the same coin it become a community who then automatically starts selling their coin in the same price or +/- with the current price. No one alone(or exchange) sets the price. So different exchange have different community of traders who follow the trend of that particular exchange.
If you are referring to the MtGox situation,