I believe it would be better to guard access to ``_sourceFile`` with a different lock than the ``ScalaCompilationUnit`` instance lock. My reasons are:

1) Granularity
2) Avoiding deadlocks
3) Encapsulation