Add a factory method for SourceDirectorySet

SourceDirectorySets are used throughout the Gradle codebase and would be very useful for implementors of plugins for other languages. However, there is no public API method to create such a SourceDirectorySet. So I currently have to rely on calling private API or reimplement it.