Initial public commit
glean.h to eta.c, compile on darwin
Merge pull request #11 from kevinlawler/master

compile on darwin

Thanks @kevinlawler.
Also add sys/types.h.

Thanks @bojsml.
When you index ~, it's actually more like `grep -r ~ foo`... :)
libbsd is no longer necessary, nextline is used instead
Merge branch 'master' of github.com:silentbicycle/glean
Add gln_tokens to gitignore
Basic Emacs integration.
actually, "cd src" before make.
Add sys/types.h
Remove special case for first filename, timestamp file is added differently now.
Every FLUSH_COUNT (default: 100) files, clear tokenizer tables.

Major speedup, AND less memory used.
Don't grow hash table to have more buckets than possible keys.

Also, several minor fixes (e.g. printf -> fprintf)
Use batch size of 100 for grepping, makes results come faster.
Temporarily ignore some file extensions that have textual headers and don't get filtered.
Change "Xm Xs remaining" to "eta Xm Xs"
Make ignore regexes case-insensitive
Add separate DEBUG_IMB #define
Switch back to 4-byte hashes, for now.

Too many hash collisions when using 2-byte hashes with large databases (i.e. 100k files).
It increases the DB size and memory usage by ~50%, but works much better.