Fix problem where questions with no parent are added to the wrong list

Previously, we'd add an `undefined` entry to the questions-by-parent list. 
It looks like this is the main change. The use of the `siblings` variable avoids multiple hashtable lookups. Could we keep that code and just wrap the whole thing in an `if (parentID) { ... }`? Then we also avoid the weird side affect of assigning `app.questionsByParentId[undefined] = []` in cases where `parentID` is `undefined`.