A little suggestion regarding a tic-tac-toe scene in day 1.
As I understand, you have 2 algorithms for NPC moves:
1) A bad one, used for the first 2 girls.
2) A perfect one, used for the last girl.
An obvious problem is that perfect algorithm can never lose, so you had to add "cheat" button.
This is forced, and not very satisfactory.
Easy way to improve it is to select NPC's move at random from the first or the second algorithms, and to assign a probability of a subpar move according to NPC skill level.
Say, for the first & second girls chance of imperfect move can be around 25%.
For the third, more skilled girl, it can be as low as 1-5% - this value should be determined experimentally so that player will usually have to play, for example, 10+/-3 rounds to win.
This way first girls will look less silly, and the last one will not be unbeatable, so that "cheat" button no longer needed.