Modifying ProjectItem type attributes supports saving

Summary
-------------------------
I've changed `CsProjFile` to call all instances of `ProjectItem` and allow them to update their corresponding `MSBuildItem`.

Use Case
-------------------------
Modifying existing project files. For example updating the version of a referenced assembly