Lo que pasa es que el spl_autoload_register se apega al PSR-0, por eso te invito a leer acerca de, aunque solo funciona con Namespaces, no con clases con underscore (De_Este_Estilo).
Respecto a lo otro sí, a menos que hardcodees la dependencia en tu clase user:
Código PHP:
Ver originalclass User {
private $core;
public function __construct()
{
$this->core = new Core();
}
}
O si usar un DI Container (como Pimple) puedes automatizar todo eso y decirle a Pimple que dependencias necesita tu clase user a la hora de instanciarla.
Saludos.