We were executing all compacting strategies even when we have
more than enough items as candidates. If the strategy is expensive,
(performance wise) this is a problem.
In this commit, we execute them one by one and stop when we have enough
candidates.
The methods in CompactInterlanguageList class also arranged as
individual function declarations than comma seperated method list.
Change-Id: Idce6489387d139852125f4448d0e192f6a7e1353