Fixing install issue, adding exec-sync support

Test Passing on 0.6, 0.8 and 0.10 on travis: https://travis-ci.org/jmervine/phantomjs

My system info:

    $ cat /etc/issue
    Ubuntu 12.04.2 LTS \n \l
    
    $ node --version
    v0.10.13

> These changes should probably be validated on a Mac and/or Windows system, but I don't have access to either.

### Fixing install issue

On my system, `npm intsall phantomjs` is downloading and installing `phantomjs` every time. I found the following:

    > which("phantomjs", function () { console.log(arguments) });
    { '0': null, '1': '/usr/local/bin/phantomjs' }

But `install.js` was expecting `path` which is returning `null`, as in this example:

    > which("phantomjs", function (path) { console.log(path) });
    null

### Adding `exec-sync` support

When trying to use this module with `exec-sync`, there's an issue where `phantomjs.path` get's passed in as the first argument, and causes an infinite loop in `bin/phantomjs`. I fixed this, so if `phantomjs.path` is also the first argument, it gets removed. Tests added using `exec-sync`.
 
Cheers,
J