Update to latest per-directory-history

See [https://github.com/jimhester/per-directory-history]
Update to latest per-directory-history
`fc -l 1` instead of `history` in zsh_stats #2501

$HIST_STAMP breaks zsh_stats. see #2501
Makes history-substring-search use term specific up and down buttons. Fixes #2089.
history-substring-search: bindkey now checks if terminfo is available first.
Added git mode support for merging, rebasing, and bisecting

<B> Designates Bisecting
>M< Designates Merging
>R> Designates Rebasing
Correct redirection of output from 'hash'

The intention of the redirection to /dev/null is to hide the output
'hash: no such command: git' since we rely on the exit status.

However, the output goes to stderr, so it's stderr that needs to be
redirected. For completeness, we redirect both stderr and stdout using
'2>&1'.

Example:

  [~]$ hash git > /dev/null
  [~]$ PATH=''
  [~]$ hash git > /dev/null
  hash: no such command: git
  [~]$ hash git > /dev/null 2>&1
  [~]$
Spelling correction in itunes control function.

Spelling correction in itunes control function.
Use cache folder inside $ZSH, delete with unaliased rm
set exclude-dir or exclude grep flags only if available
Fix for Python3

In Python3 without universal_newlines set to True
output from Popen was byte-encoded.
Fix `docker rmi` tab completion

This is exactly what happens on tab completion for docker rmi. This commit
fixes that.

```sh
$ docker rmi <hit TAB>
_arguments:comparguments:312: invalid argument: __docker_images
_arguments:comparguments:312: invalid argument: __docker_images
_arguments:comparguments:312: invalid argument: __docker_images
```
[FEATURE] Support Vagrant 1.6 version command

Vagrant 1.6 introduces a couple new commands, including the `version` command.
The `version` command shows the currently installed version information and
also checks for new updates available.
[FEATURE] Support Vagrant Share

Vagrant 1.5 introduced Vagrant Share to allow remote access to a Vagrant
environment. This adds support for the `share` and `connect` commands.
[FEATURE] Support Vagrant Cloud commands

Vagrant 1.5 added Vagrant Cloud to share boxes. Some boxes
may be protected, the `login` command allows to access those
protected boxes from Vagrant Cloud.
[FEATURE] Support vagrant global-status

Vagrant 1.6 introduced the `global-status` command which allows
to get a quick overview of all active Vagrant environments for the
currently logged in user.
Improve consistency, remove dots at end of command descriptions