playable: code style
decision to make positions and pieces immutable

and accompanying API removal. Also move some non-position specific methods to util.