         return (startPoint, endPoint)
     }
     
-    func calculateCellRectsWithPositions(positions: [GameBoard.Position], inRect rect: CGRect) -> [CGRect] {
+    func cellRectsWithPositions(positions: [GameBoard.Position], inRect rect: CGRect) -> [CGRect] {
         return positions.map {
-            calculateCellRectAtRow($0.row, column: $0.column, inRect: rect)
-        }
-    }
-    
-    func calculateCellRectAtRow(row: Int, column: Int, inRect rect: CGRect) -> CGRect {
+            cellRectAtRow($0.row, column: $0.column, inRect: rect)
+        }
+    }
+    
+    func cellRectAtRow(row: Int, column: Int, inRect rect: CGRect) -> CGRect {
         let
         totalLength = rect.width,
         cellLength  = totalLength / CGFloat(cellsPerAxis),

        guard gameBoard != nil else { return }
        
        let
        borderRect    = calculatePlatformBorderRect(),
        platformRect  = platformRectFromBorderRect(borderRect),
        gridLineRects = gridLineRectsFromPlatformRect(platformRect)
        

    
    func pointsForWinningLineThroughPositions(positions: [GameBoard.Position], inRect rect: CGRect) -> (CGPoint, CGPoint) {
        let
        winningRects = cellRectsWithPositions(positions, inRect: rect),
        startRect    = winningRects.first!,
        endRect      = winningRects.last!,
        orientation  = winningLineOrientationForStartRect(startRect, endRect: endRect),
