Fnmatch extglob support

Closes #721 
If I can swap `String pattern` for `ByteList pattern` then I can ditch `spath` above. Need some guidance on `String -> ByteList` though.