added psuedo-legal move generation