Made the ProviderContext.Value class slightly more type-safe (issue #123)