Added a GestureListener to BoardCanvas to handle all the touch events, provided a real implementation of adjacent squares logic (has a serious mystic bug, as of yet not fixed
Added some documentation