Implement a function that determines whether a Tic Tac Toe game is over.
The input is a 3x3 list of strings containing "X", "O", or " " for an empty cell. Return True if either player has three symbols in a row, column, or diagonal, or if the board is full; otherwise return False. Assume the board is valid and turns have been played legally.
def is_game_over(board):