address review comments: fix order of includes
address review comments: substitute std::list by residual's own portable
version of a list