Support for starting a new game + features/changes

This is a *huge* commit. Here are some of the changes:

1. I added a menubar with actions to either start a new game or to quit.

   The menubar also supports keyboard shortcuts and displays images if your theme supports it.

2. I changed the way GTKTacToe manages activated cells.

   Instead of dealing with sensitivity internally, I think we should just disable cell sensitivity directly with GTK.

3. I changed the program so that everything is "shown" all at once.

The program could be considered "stable," but this code is probably not ready to merge to master yet.
Muted warnings in Makefile so that I can see errors more easily
Support for playing against the computer.

Use `-c` if you dare! YOU'll NEVER WIN! HA HA HA HA! :laughing:. Actually, it doesn't work *quite* right yet. The computer tends to play one last time after a tie has been announced. This branch still needs a bit of work.
More complete "Playler Vs Computer" implementation

This is still not complete. Additionally, the computer does not win every single time like I thought it did. Will be looking into it.
Fixes for the "ai" implementation
Changed engine/Fixed a potential bug in main file

There was some unncessary code that I had previously placed in `engine.c`. There was also some code that I realized wasn't working the way that I had anticipated, so I fixed it.

I added an `if` statement to `gtktactoe.c` that will prevent a potential bug when starting a new game before the current game is finished.
Made engine stronger.

I don't think you can beat the computer anymore, but I can't be sure...
Made the engine even stronger
Checkbox

I added a checkbox to the menu. It allows the user to toggle between the "computer vs. player" and "player vs. player" modes.
Made some functions "public"
added code to make sure that the computer's second turn is never frivolous
Fixed secondTurn bug
Starting to clean up repetitive code.

This commit adds the displayVictor function.
fixed tabbing in gtktactoe.c
Removed some unnecessary, repetitive code.
Removed some unused code and fixed a massive bug from the last commit
Migrated a lot of code from gtktactoe.c to engine

There was some stuff in gtktactoe.c that I should have placed in engine.c, so I moved it. Additionally, I removed some functions from engine.h and made them static again in engine.c. I also removed some unneeded code from engine.c
Removed rowColToIndex
Reorganized engine, made sure that the player never plays on the computer's turn.
Created libgtktactoe.{c, h} and fixed warnings

I created libgtktactoe.{c, h} because gtktactoe.c was getting a bit large for my taste. I also was able to fix all of the previous warnings that we were getting while building. However, I created a new warning which I am yet to fix.