added abstraction for notification area and messages