Modifying ViewDataDictionary and ModelStateDictionary to copy on write instead of eagerly copying.



Partial fix for #878
this change does not seem worthwhile.  this constructor is used only in a single unit test.