NativeBinary.getLibs() is now responsible for including libs from source sets
Keep source set library dependencies separate when compiling

- dependencies added to one DependentSourceSet are no longer available when
  compiling another source set
Remove unused compiler arg
Report the searched locations when Visual Studio or the Windows SDK cannot be located
Tidied up a couple of TODOs