CLN: give a proper name to generic index resolvers getter
ENH: pass variables to numexpr
CLN/ENH: refactor scope to use DeepChainMap and inspect.stack
TST/CLN: no need to pass scope to eval assertions
CLN/ENH: use swapkey instead of crazy hack
CLN: update expr.py for scope changes and remove unused isexpr
fix me up
ENH/CLN: track scope instead of hard coding minimal stack level