World:move can not change dimensions
refactor getBox
rename target_l & target_t to future_l & future_t