Fix #31: Avoid `-d' switch for compatibility
Expire project info in ggtags-update-tags

1. Tweak ggtags-project-expired-p to treat negative timestamp as
   expiration.
2. Enhance ggtags-make-project to allow updating project info.
3. Teach ggtags-find-project to update project info if expired so that
   all buffer-local values of ggtags-project get the new value.
Remove side-effect from ggtags-with-process-environment

Make ggtags-ensure-project generate an error if project not found.
Fix last change

which causes error:
  ggtags-get-libpath: Invalid function: ggtags-with-process-environment
Rename ggtags-with-process-environment

to ggtags-with-current-project.
Fix #32: handle upstream change in query-replace-read-args
Small fixes to ggtags-find-tag-regexp
Fix #30: Remove M-o key binding in ggtags-global-mode
Make buffer cache project root directory instead

so that the project info is stored in one place, which is convenient
for update and destruction operations.
Fix #33: support running ggtags on remote hosts (via tramp)

Tighten file name checking in ggtags-delete-tag-files.
Mention `enable-remote-dir-locals' in ggtags-process-environment.
Teach ggtags-create-tags to retry if mkid is missing
Stricter search for GTAGS file in ggtags-find-project

to avoid being fooled by 'gtags' directory in case-insensitive file
systems.
Store 'global' options per project

to work better with remote hosts.
Mention support for tramp in README.rst.
Be defensive in ggtags-find-project