first steps towards move generation