fix(service): avoid possible npe in internal getTranslationTable()

Relates #723
Remove unnecessary function scope
Simplify promise handling
Fix jshint issue
feat(service): interpolate translationId in case of rejected translation

Closes #730
chore(*): introduce additional scopes for testing different AJS versions

Example usage: ```TEST_SCOPE=angular_1.3.x grunt test``` runs all tests against latest AJS 1.3 release

Run `grunt install-test` to ensure all scopes' dependencies are fully available.

More commands:
* `npm run-script test-scopes` runs all available scopes (entries in `test_scopes/`)

Adding new scopes (or remove it again):
* Check entries in .gitignore, .npmignore
* Add directory in test_scopes with a bower.json
* Add matrix build in .travis.yaml
docs(loader): add guide (de, en)
Do not require a global plato
Update to latest grunt-conventional-changelog / fix differences
docs(demo): changes $translate.uses() to $translate.use() + path fix for ex7 and ex10
docs(demo): update path to included scripts
docs(loader): add guide (fr)
docs(loader): fix wrong paragraph in documentation
fix(service): add missing final event on new (async) translations

Relates #751 #733
fix(service): constructor `useUrlLoader()` missed optional options
fix(service, loaders): the loader options ($http) have been merged wrong

This adds also some tests for the loader options (here: $http.method)

Fixes #754
Fixes #547
Bump version
Update bower meta data to angular-translate domain
feat(directive): translate attributes using directive

Add to the translate directive the ability to act on attributes. Using
the translate-attr-ATTR as an attribute, ATTR will be translated.
translate-default, translate-value and interpolation are possible.

Closes #568
feat(directive): translate attributes (optimize process flow)