Updated to support async await. Removed base classes. Migrated to Common.Logging