empty pathPatterns should be handled as null
preserve directory structure relative to source during output

fixes #10