Allow to exclude files from parsing

Right now the only way to specify which files should be parsed is setting a mini match expression.
That's fine in most cases however it doesn't allow to excludes from being parsed.

Therefore my pull request changes the current `source.files` schema `'{ pattern: "...", basePath: "..." }` and
adds an optional filter function attribute: `'{ pattern: "...", basePath: "...", filter: ... }`.