Improved visibility of collections and variables across multiple threads

Upon our discussion with Karl in 
http://maven.40175.n5.nabble.com/Maven-Commit-3b671d07340b002e13775883d09e7f7e0d9a3c49-td5821660.html
i have improved MavenProject.java and surrounding code.