IsKspDir should not log a error in the false case.
This avoids it by adding a precondition to the call to DetectVersion which logs the error.
Closes #373.
Merge pull request #587 from RichardLake/ErrorInReadmeFile#373

IsKspDir should not log a error in the false case.
Shows more info in show
Now shows relationships too.
Catches potential NRE
Merge pull request #591 from Ippo343/ShowMore

Shows a lot more information with the show command
Add check that values from win32 registry are actually valid directories.
Due to how KSPManager uses PopulateRegistryWithInstances works this will result in invalid entries being removed.
Closes #507.
Revert "Add check that values from win32 registry are actually valid directories."

This reverts commit 0bc2e43c4691a4080ccb894a075f7ea095d60a30.
Add check that values from win32 registry are actually valid directories.
Due to how KSPManager uses PopulateRegistryWithInstances works this will result in invalid entries being removed.
Closes #507.
Merge pull request #593 from RichardLake/#507

Add check that values from win32 registry are actually valid directories...
Fixed error in last commit.
Fixes #597. Download progress now reuses a line instead of creating new lines.
Merge pull request #598 from RichardLake/#597

Fixes #597.
Change PortableDir to use GetExecutingAssembly instead of GetEntryAssembly. The later can fail in certain types of test runner.
Add equals and hashcode to KSP.
Based on the gamedir.
Reworked KSPManager.
Extracted the registry functions to their own interface. Added tests.