Fix jshint warnings

This PR fixes almost all jshint warnings, I got all non-destructive changes in one commit. The PR also includes 1 additional commit that removes `Principal.roles` orphaned/unused method, as it references an non-existing variable and I believe in the last refactor of that area it's supposed to no longer be needed (in favor of `identitiy.roles`)

The one last remaining warning this PR doesn't attempt to handle is for this code in `language.service.js`:

```javascript
    getBy: function (language) {
        var deferred = $q.defer();
        deferred.resolve(LANGUAGES);
        return deferred.promise;
    }
```

The warning:

    src/main/webapp/scripts/components/language/language.service.js
     17 |            getBy: function (language) {
                                      ^ 'language' is defined but never used.

The method `getBy` is actually used somewhere in the code, once with passing the `language` parameter and another without. But I prefer code style commits to be dumb, so I will test this one separately and submit another PR if required.
That one is definitely a slip on my part, wasn't meant to break it into that