Change ${parent.version} to ${project.version} since Maven apparently complains about ${parent.version}.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=78201599
Making Singleton's creation lock less coarse.

Singleton is defined as a scope which creates no more than one
object per injector. It's highly confusing when you catch a deadlock
between two unrelated injectors due to the same class injection.

Problem is demonstrated using a test that recreates scenario when
one thread injecting class can block other thread to use its own
injector.

Proposed solution is to use Injector-wide locks in a singleton.
ThreadLocal as a way to store current state.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=78469951
Merge pull request #868 from google/moe_writing_branch_from_2b4dd1617e61fac3869381e9e7728b488badc5e2

Merge internal changes