Visual Studio interfaces with NuGet via a dll, but the command line tool is solely an exe (nuget.exe).
Is there a reason they don't share a common library? It seems like this introduces the risk of allowing for code divergence between the dll and exe.