Added function to load translations from JS

For apps that support async translation loading, a new function
OC.L10N.load() can be used to asynchronously load the translations
for a given app.

Some app devs prefer to load their asserts dynamically from the JS side, for example using "OC.addScript()", "OC.addStyle()". This PR adds a method "OC.addTranslations()" to load them asynchronously.

Note: we cannot use that method in core yet because most of the code has no clear entry point where the translations could be loaded.

Please review @DeepDiver1975 @icewind1991 @th3fallen @LukasReschke 




Maybe return a Promise instead of using callbacks?