added phpunit coverage whitelist
added extra files to gitignore
added tests for exceptions