Mark-compact algorithm

Summary