factorize move methods
add some comments about collisions