added infrastructure for calling preference adjustment, changed Model::parent() to not throw if parent_ == NULL, and adjusted the inst model print functionality accoringly