Intercepting storage operations using OperationContext

Intercepting storage operations using OperationContext. Still requires
changes to the user's code unfortunately.