new fnmatch implementation