Primero que nada, gracias a los tres por sus valiosos aportes, al parecer no estoy tan equivocado en la forma en que tengo planeado hacer esto.
masterpuppet, de acuerdo, en el modelo solamente tendria funciones de acceso a base de datos y las redirecciones deberian ser especificamente en el controlador; tengo cambiar mis habitos y aclararme un poco sobre los metodos que deben aparecer en cada objeto.
Sobre lo del registro y mis dudas entre parent:: self:: y $this->, parece que anoche al publicar el tema ya estaba medio dormido, pero hoy al levantarme me "cayo el veinte"
Al parecer, ya estoy haciendo algo similar al patron singleton + registry para los modulos cargados al tener $principal->_models y $principal->getModel()... aunque claro, necesito revisar las sugerencias para pulir y adaptar esta parte de acuerdo a sus sugerencias.
Mi confusion entre global, parent::, self:: y $this-> fue porque anoche ya estaba medio dormido, pero ahora lo tengo mas claro:
Definitivamente quiero evitar el uso de global, pero en mis primeras pruebas no funcionaba ninguna de las resoluciones de ambito, pero... era poque en principal->__construct() intentaba crear otros objetos y, obviamente, no se creaba el mismo $principal, primero tiene que salir del constructor.
Para cuando resolvi esto, en las clases base ya habia creado los metodos para tener acceso a la principal y despues fue cuando probe parent::, self:: y $this->
Porque me funcionan las 3 formas?
1- Al instanciar el modulo en $principal->_models (con el metodo $principal->getModel()) ya tengo acceso por medio de parent:: y creo que asi es como debo usarlo.
2- Lo que hace que tambien funcionen self:: y $this-> son los metodos heredados de las clases base y no son necesarios ahi.
Ahora, solo tengo que ver cuales metodos debo permitir que queden accesibles a otros objetos por medio de parent:: y cuales no.
Tambien, el objeto de acceso a base de datos lo voy a "mudar" a $principal->db.
masterpuppet, Abimael y carlos_belisario, nuevamente muchas gracias, es muy util la informacion proporcionada.