Касательно фразы "Объект это ведь экземпляр класса".
Эта фраза из объектно-ориентированного программирования (ООП). Сама она значит, что у каждого объекта есть какой-то класс, или иначе говоря объект является его экземпляром. Но здесь Вы смешиваете объектную модель Python с ООП, а это разные вещи. В Python любой экземпляр класса это объект, но далеко не все объекты это просто экземпляры класса.
К примеру, объектом является также класс, экземпляры этого класса (которые в ООП и называются объектами) тоже объекты, но лишь одни из возможных видов объектов в Python.
В Python, чтобы быть объектом участку памяти нужно иметь тип и количество ссылок на этот участок памяти (
https://habrahabr.ru/company/buruki/blog/189986/).
Перечень всех встроенных типов можно найти здесь:
https://docs.python.org/3/library/stdtypes.html.
Что касается "объект строки это экземпляр от какого то класса?".
Если говорить на языке ООП есть класс строк (в Python его имя str), любая конкретная строка, например 'я_строка', есть экземпляр класса строк или, иначе говоря, объект класса строк.
А если говорить на языке объектной модели Python: str - класс объектов, который и сам тоже объект.
А любой его экземпляр (какая-либо строка) - тоже объект.
В общем в ООП экземпляр и объект одно и то же, в Python - нет.
С практической точки зрения фраза "все есть объект" говорит, что что угодно можно присвоить переменной, передать в качестве аргумента функции, вернуть, как результат функции и т.д.
Например, в качестве аргумента или результата функции может быть другая функция или даже какой-либо класс (встроенный или созданный Вами).
Вообще такие вещи определяют гибкость языка, что в свою очередь иногда позволяет сделать значительно более простое и короткое решение.