Only chsh to zsh if zsh is not the shell

This PR checks the user's current shell before making the chsh call.  This is a good thing because the chsh call requires a password input, so it'd be nice to avoid that where possible.
If I'm not mistaken,
```
if [[ ps -p $$ | grep zsh ]]; then
```

checks the shell of the current process, but that will always be bash (since mac is a bash script).  The call to dscl is similar to calling getent (or, less robustly, parsing /etc/passwd) on a Linux machine.  As far as I'm aware, dscl is the best way to check a user's shell on OSX.

```#test.sh
if [[ $(eval 'ps -p $$ | grep zsh') ]]; then
  echo 'matched'
else
  echo 'didnt match'
fi
```
```
 ~ % bash test.sh
 didnt match 
```