Merge pull request #13 from pveller/master

Add FakeUserProfile to work around issues when Sitecore tries to persist states into the current user profile
Implemented context user switching
Run NSubstitute tests
Make FieldIdToNameMapping readonly
Implemented item locking
Added ReferenceFieldTest
Temporary commented unstable testcase