Because the class's instance's __dict__ is set equal to the __share_state dict. They point to the same object. (Classname.__dict__ holds all of the class attributes)
When you do:
b1.foo = "123"
You're modifying the dict that both b1.__dict__ and Borg.__shared_state refer to.