set header_cache
DRY up mark-read macros
move executables into bin directory
update README for bin
rewrite gcontacts script entirely
updates from upstream