Initial implementation of git pillar

This isn't a particuarly pretty implementation, but it does work.

There are a few "gotchas" with this implementation-- since the pillar builder uses the local fileclient you have to have some directory which has all of the files-- to work with this i've set it up so you have to specify a branch+repo combination.

Ideally we'd need to do some work on the fileclient to add a new class which is something like "gitremote" that can then manage all of the file getting/caching/etc.
add ability to pass defaults to included pillar sls
Make yumpkg module log locally to /var/log/yum.log

The addition of _YumErrorLogger effectively killed local yum logging.
This commit modifies the logger to behave more like
yum.rpmtrans.RPMBaseCallback, bringing back logging to /var/log/yum.log
while preserving the special error logging that this class initially was
written to provide.
Adapted the tests suite to work with salt-testing
Remove the now unnecessary `saltunittest`. Moved remaining functionality to `integration`.
Adapted code fix `sys.path` in case called from `__main__`. Adapted to salt-testing.
Make sure every test module is runnable by `__main__`.

* Double to single quotes
Install Salt Testing from git
Update `sys.path` before import salt. This way salt does not need to be installed.
Update copyright years of changed files. Added `__main__` execution to `tests/integration/states/pip.py`.
Added support for `__main__` execution and formatting fixes.
Added support for `__main__` execution and formatting fixes.
Added support for `__main__` execution and formatting fixes.
Added support for `__main__` execution and formatting fixes.
Added support for `__main__` execution.
Only update `sys.path` once.
Make use of the `SaltTestcaseParser` added to salt-testing.
Let's make use of salt-testing code coverage testing option parser.
Remove debug logic to test coverage.
Reuse salt-testing shell test case.