Added Direct logger for logging outside the CallContext.
Added Log factory to create ILog, so the configuration of what logging mechanism to use isn't hardcoded in portal.