History Filtering in Imperfect Information Games: Algorithms and Complexity