So just to be clear, specify a single objective that merges all the sub-objectives and backward() on it?

Yes.

There won’t be any issue regarding going over the same variables twice through different pathways?

No issues.