Именование классов?
используй неймспейсы.
namespace Tickets\LkBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
class Leaf {} // лист

class Thorn {} // шип (т.к. тычинка вроде как у всех цветковых есть)

class Flower // цветок
{
    Leaf[] leaves;
}

interface Thorny // с шипами
{
    Thorn[] thorns;
}

class LilyPetal {} // лепесток лилии

interface CuteThing {} // красивая фигня

// лилия — шипастый цветок, да и к тому же, красивая фигня
class Lily : Flower, Thorny, CuteThing
{
    LilyPetal[] petals;
}

class Apartment // квартира
{
    CuteThing[] things;
}


По поводу именования файлов в стиле:
«как назвать интерфейс, который позволит Testing_Database_Cache_Cookies использовать посторонний класс Fuston_Http_Response_Cookie как свой собственный Testing_Database_Cache_Cookies_Cookie?»… то непонятно, зачем это вообще нужно. Особенно учитывая, что зачастую это невозможно.
Название класса должно кратко описывать сущность, а не говорить об особенностях внутреннего устройства.