there's something fundamentally broken about the way npm handles dependencies, can't we just have a simple, centralized registry that just works instead of a spider web of weird interactions between versions and peer dependencies?