Japanese Mahjong project in c++; good practice for OOD and discovering maching learning techniques to build AI player