Utility functions to recursively traverse directories (asynchronously and synchronously) triggering the provided callback (optionally filtering filenames by a regex)