gaLayers may send requests with lang set to undefined

If the gaLayers service gets the "translate change" event before the "topic change" event then it will send a layers config request with lang set to undefined in the URL. This is not correct. The gaLayers service needs both a topic and lang before sending a layers config request.
Add topic id to gaLayersChange events
Catalog need to listen to gaTopicChange
Major update of catalog directive

With this commit the catalog tree directive no longer listens to "language change" events. Instead it relies on the labelsOnly flag, as the background layer directive.
Fix catalog tree tests