decoupling logic for black and white

First steps to introduce multiplayer