libc bindings for glob.h

only tested on linux/x86_64, but i got the values for other platforms
from their system header files.

no bindings for win32, because win32 doesn't include glob.h.

also, glob() takes a callback for error handling, but i'm just making
this a *c_void for now, since i don't know how to represent c calling
back into rust (if that's even currently possible).
add a higher level glob() function to os

this could probably use expansion - it just uses all of the default
options, which is usually what we want, but not always. maybe add a
separate function that takes more options?
glob_t should be public on all platforms
auto merge of #6161 : graydon/rust/glob-retry, r=graydon

This is a retry of pull #5832