### Godot version

v4.1.beta1.mono.official [828ec2c5d]

### System information

Godot v4.1.beta1.mono - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Ti (NVIDIA; 31.0.15.3598) - 13th Gen Intel(R) Core(TM) i5-13600K (20 Threads)

### Issue description

After the recent refactoring (https://github.com/godotengine/godot/pull/75901), Node process priority seems to be unimplemented. `ComparatorWithPriority` is no longer used anywhere in the engine code.

Nodes behave as if they all had the same priority, and running with `--single-threaded-scene` makes no difference.

### Steps to reproduce

Run the MRP, look at the order in which the nodes print their names.

In Godot 4.0.3: First, Default, Last
In Godot 4.1-beta1: Default, First, Last

### Minimal reproduction project

[ProcessPriorityBug.zip](https://github.com/godotengine/godot/files/11693028/ProcessPriorityBug.zip)

ClassDB::bind_method(D_METHOD("set_time_left", "time"), &SceneTreeTimer::set_time_left);
	ClassDB::bind_method(D_METHOD("get_time_left"), &SceneTreeTimer::get_time_left);
	ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "time_left", PROPERTY_HINT_NONE, "suffix:s"), "set_time_left", "get_time_left");
	ADD_SIGNAL(MethodInfo("timeout"));
}
void SceneTreeTimer::set_time_left(double p_time) {
	time_left = p_time;
}
double SceneTreeTimer::get_time_left() const {
	return MAX(time_left, 0.0);
}
void SceneTreeTimer::set_process_always(bool p_process_always) {
	process_always = p_process_always;
}
bool SceneTreeTimer::is_process_always() {
	return process_always;
}
void SceneTreeTimer::set_process_in_physics(bool p_process_in_physics) {
	process_in_physics = p_process_in_physics;
}
bool SceneTreeTimer::is_process_in_physics() {
	return process_in_physics;
}
void SceneTreeTimer::set_ignore_time_scale(bool p_ignore) {
	ignore_time_scale = p_ignore;
}
bool SceneTreeTimer::is_ignore_time_scale() {
	return ignore_time_scale;
}
void SceneTreeTimer::release_connections() {