core: change Group.Liberties to a Count type
main: check move legality in play command