Use recommended approach for logging.

This splits the logging logic into
```logging```, which becomes a client library, wrapping freedom.core().getLogger()
and
```logger```, a freedom module implementing the well known 'console' API, which
can be installed as a custom freedom logger, via
```javascript
freedom('manifest.json', {
  logger: 'logger.json'
}).then(...)
```

In doing so, we can remove the ```core.console``` permission from all other
workers, and the logs will include freedom system errors.


Addresses https://github.com/uProxy/uproxy/issues/503
Nit: Better not to mix your reference mechanisms, if you use a string to create a tag, then use the string reference mechanism too, i.e.
`expect(freedom.loggers['tag1']).toBeDefined();`