Bitcoins are inherently anonymous, it's just hard to convert between bitcoins and real-world goods/services/currency without identifying a wallet.
This is not a social problem (can't be solved with technology, even though lots of tech tries). This is a technical problem (advances in privacy services can make bitcoins more easy to use safely).
Bitcoins are certainly not "inherently" anonymous if it requires the use of external mixing services to sufficiently hide one's activities in the block chain.
Each "bill" in bitcoin includes a full transaction history, which gets shared with every other bitcoin user. It's quite different knowing that a dollar bill got from A to B, vs a bitcoin which tells you exactly how it travelled from A to B.