Implements a FileSet a la Ant/Gradle. A file set is a specification of a set
of files. A file set specification contains a number of '/' separated
segments. The last segment is Glob expression and the preceding segments
specify either a directory, a wildcard directory ('*'), or a set of wildcard
directories ('**').
filesets ::= fileset ( ',' fileset )*
fileset ::= ( segment '/' )* filematch
segment ::= any | glob
glob ::=
any ::= '**'
filematch::= allfile | anyfile | glob
anyfile ::= '**' glob
allfile ::= '**'