Add handling for Git submodules

Problem
------------

Running `git smart-pull` within a submodule results in:

```
     Errno::ENOTDIR:
       Not a directory - ./.git/HEAD
```

Change
-----------
This Pull Request...

 - ...looks for the `.git` directory for Git submodules so that `git smart-pull` will run therein.
 - ...fixes up some specs that failed with newer Git versions
 - ...introduces Travis CI to verify changes against multiple rubies
 - ...emits a more helpful message when run outside of a Git repo