Add a logging abstraction layer.
Add logging provider for NLog
Log some key Application events
Don't throw when NLog is not available
Add logging provider for log4net