Modified engine move generation API to be more flexible