Add space to allow for correct dispatch ! injection
Simplify expanded paths to clean up empty {dirname}
Support ** in patterns

References #14.