Add sane default instance dir, make configurable

Use a non privileged directory for the app instance. Use ~/.cache/grip
by default but allow the user to specify an alternative directory with
the --app-dir option.

Fixes #38
Could you use `os.path.join('~/.cache/grip')` for cross-platform paths?