this way, we do not need to maintain the processing of SEs in three different places. I also replaced the "se[-c(..)]" with a function in gllvm.aux that splits the se vector by name automatically. This is less prone to bugs, because se[-c(..)] is sensitive to the order of parameters. I.e., previously, if parameter vectors were accidentally placed in the wrong order, the SEs would be wrong. Now, the order no longer matters as matching occurs by name.
For ease of further maintenance:
this way, we do not need to maintain the processing of SEs in three different places. I also replaced the "se[-c(..)]" with a function in gllvm.aux that splits the se vector by name automatically. This is less prone to bugs, because se[-c(..)] is sensitive to the order of parameters. I.e., previously, if parameter vectors were accidentally placed in the wrong order, the SEs would be wrong. Now, the order no longer matters as matching occurs by name.