fix: cache invalidation under concurrent queries
The configuration cache is a part of the executor's runtime. Previously, quech query was holding a immutable borrow of the runtime, while cache invalidation tried to get a mutable borrow (apply_config). As a result, the cache invalidation always failed to mutably borrow the runtime. Current commit fixes the issue by wrapping the configuration in a reference cell. As a result, apply_config now immutably borrows the runtime and don't fail on this step.
Take a look at #330 (closed) for the backstory.