Не вижу смысла плодить сущности, по этому советую начать с одной. На каждый коннект по одному объекту Irc. StringParser, по-сути — вспомогательный класс Commands и некое подобие связки между ним и Irc. Не сильно разбираюсь в Андорид-программировании, но если класс, отвечающий за VM должен наследовать Activity, то у Вас этот класс — Commands.