     }
     
     private func notifyDidFailToLoadMessages() {
-        privateMessageObservers.forEach({ $0.privateMessagesServiceDidFailToLoadMessages() })
+        observers.forEach({ $0.privateMessagesServiceDidFailToLoadMessages() })
     }
 
     private func updateObserversWithUnreadMessageCount() {
         let unreadCount = determineUnreadMessageCount()
-        privateMessageObservers.forEach({ $0.privateMessagesServiceDidUpdateUnreadMessageCount(to: unreadCount) })
+        observers.forEach({ $0.privateMessagesServiceDidUpdateUnreadMessageCount(to: unreadCount) })
     }
     
     private func determineUnreadMessageCount() -> Int {
         return localMessages.filter({ $0.isRead == false }).count
-    }
-    
-    private func markMessageAsRead(_ message: Message) {
-        guard let token = userAuthenticationToken else { return }
-        
-        api.markMessageWithIdentifierAsRead(message.identifier, authorizationToken: token)
-        updateObserversWithUnreadMessageCount()
     }
     
     private func makeMessage(from characteristics: MessageCharacteristics) -> MessageImpl {

    }

    func refreshMessages(completionHandler: (() -> Void)? = nil) {
        if let token = userAuthenticationToken {
            refreshMessages(token: token, completionHandler: completionHandler)
        } else {
            notifyDidFailToLoadMessages()
            completionHandler?()
        }
    }
    
    private func refreshMessages(token: String, completionHandler: (() -> Void)?) {
        api.loadPrivateMessages(authorizationToken: token) { (messages) in
            if let messages = messages {
                self.updateEntities(from: messages)
            } else {
                self.notifyDidFailToLoadMessages()
            }

            completionHandler?()
        }
    }
    
    private func updateEntities(from messages: [MessageCharacteristics]) {

    }

    func add(_ observer: PrivateMessagesObserver) {
        observers.append(observer)
        observer.privateMessagesServiceDidUpdateUnreadMessageCount(to: determineUnreadMessageCount())
        observer.privateMessagesServiceDidFinishRefreshingMessages(messages: localMessages)
    }
