As we already have to compute expensive forder call we could cache its results as index where possible. This would fit nicely together with #3023
Of course not all cases of order should create index, but only those that order on DT columns, and having proper na.last alignment.