Simplified `relativeFile(File) and `relativeFile(Iterable<>, String)` by reusing existing code
Slight clarification of docs
Added overload of `applyCwd()` that takes and returns an `Iterable<File<`.
Added new function `searchPaths()`.
Added `pathToModule()`, `isModuleFolder()` and `moduleName()` helper functions
Changed all methods that used to take a `List` for search paths to take an `Iterable`
Added `SourceArgumentsResolver` that contains the factored-out command line handling for source and module names