Fix VendorScanner's resulting namespaces
Cleanup and add missing implements keyword to SourceScanner
Make ProjectScanner's factory an optional parameter