Add proper instantiation of default winston transports

This adds proper handling/instantiation of default winston transports.
Custom transports can be instantiated through the 'hook's.
Note that transports are declared by specifying a `clazz` as `String`

```javascript
winston: {
  global: {
    options: {
      config: {
        transports: [{
          clazz: 'winston.transports.File',
          options: {...}
        }, {
          clazz: 'winston.transports.Console',
          options: {...}
        }]
      }
    }
  }
}
```