fixes issue 95 - changed the CachingStrategy setter to set CacheEnabled to false for NoCachingStrategy and true otherwise. this changes the behavior of the CacheEnabled status remaining the same as it was prior to the CachingStrategy being updated.

	modified:   SharpRepository.Repository/RepositoryBase.cs
	modified:   SharpRepository.Tests/SharpRepository.Tests.csproj
	new file:   SharpRepository.Tests/Spikes/CacheEnabledSpike.cs
fixes issue 108

Added private function NotifyQueryManagerOfUpdatedEntity to RepositoryBase which calls QueryManager.OnItemUpdated.
Changed RepositoryBase.ProcessUpdate to use NotifyQueryManagerOfUpdatedEntity when not in batch mode.
Changed Batch.Commit to call NotifyQueryManagerOfUpdatedEntity for each updated enity only after _repository.Save() is called.

	modified:   SharpRepository.Repository/RepositoryBase.Batch.cs
	modified:   SharpRepository.Repository/RepositoryBase.cs
Added a better fix for issue 108 which also takes adds and deletes into account.

	modified:   SharpRepository.Repository/RepositoryBase.Batch.cs
	modified:   SharpRepository.Repository/RepositoryBase.cs
Fixed accidental code change.

	modified:   SharpRepository.Repository/RepositoryBase.cs
Fixes #114 - Don't attempt to write to properties w/o a setter
Merge branch 'master' of https://github.com/DanPantry/SharpRepository into DanPantry-master
AzureTableRepository use InsertOrReplace

I think this is a better fit for the Azure Table world.
Run aspects when add actually happens in batch mode

Fixes #118
Added delete by multiple keys

Both params TKey[] and IEnumerable<TKey>

fixes #119
Added GetPrimaryKey

Allows people to use the repository to get the primary key based on the
same conventions, etc. that are used internally.