Out of all the pronouns, "whom" makes the most sense grammatically. This allows us to narrow it down to A or D.
In order for it to be the object of a preposition, there would have to be a preposition in front of it. "For," however is <em>not</em> a preposition. In fact, there isn't a preposition in the whole question.
This leaves us with option D, which is the correct answer.
You can better tell it's a direct object if you flip the sentence around a bit. Your sister is waiting <em>for whom</em>? "Whom" is essentially receiving the action. "Whom" is what your sister is waiting for.
“whose father worked for the railroad” is a subordinate clause as it is a relative clause beginning with the pronoun “whose”. It is particularly used in written English and it refers to possession of things or to make association or connections with other things or people.