Pull in ZSH config changes from elsewhere

This includes cleanup and changes to make things work well on OS X.