RhinoCore loading


I would like to understand how RhinoInside works.

Examples https://github.com/mcneel/rhino.inside will search RhinoCommon.dll and Grasshopper.dll in NuGet. Is this normal?

I delete them and replace them with my references (C:/Programs File/Rhino 7 WIP), it works, but is it good?

Each example should load RhinoCommon, RhinoCore, etc with its own code, usually:

SystemDir = (string) Microsoft.Win32.Registry.GetValue(
      @"HKEY_LOCAL_MACHINE\SOFTWARE\McNeel\Rhinoceros\7.0\Install", "Path", ... )
Assembly.LoadFrom(Path.Combine(SystemDir, libName + ".dll"))

Why should each project find the location of these libraries itself ?

Is it not possible to reference RhinoCommon in our project then have a static function in Rhino.Runtime.InProcess.RhinoCore (eg Load or Initialize) which would load the libraries present in its directory ?