Что такое Newtonsoft.Json?

Что за инструмент такой, Newtonsoft? Логика подсказывает что это какимто образом связано с Json, но что это такое? Кроме англ документации ничего на русском понятного не нашёл. Расскажите пожалуйста простыми словами

Если вам нужно десериализовать поток JSON в конкретный класс с свойствами интерфейса, вы можете включить конкретные классы в качестве параметров для конструктора для класса! Deserializer NewtonSoft достаточно умен, чтобы понять, что для десериализации свойств необходимо использовать эти конкретные классы.

public class Visit : IVisit
{
    /// 
    /// This constructor is required for the JSON deserializer to be able
    /// to identify concrete classes to use when deserializing the interface properties.
    /// 
    public Visit(MyLocation location, Guest guest)
    {
        Location = location;
        Guest = guest;
    }
    public long VisitId { get; set; }
    public ILocation Location { get;  set; }
    public DateTime VisitDate { get; set; }
    public IGuest Guest { get; set; }
}