input: Write a Python function to create a Connect Four game board and determine the winner based on a series of moves.
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.winner == 1
  assert board.reset() == None
  assert board.winner == 0
output: class ConnectFour:
      def __init__(self):
          self.reset()
  
      def reset(self):
          self.board = [[0] * 7 for _ in range(6)]
          self.current_player = 1
          self.winner = 0
  
      def move(self, player, column):
          if self.winner != 0 or player != self.current_player or column < 0 or column >= 7 or self.board[0][column] != 0:
              return False
          for row in range(5, -1, -1):
              if self.board[row][column] == 0:
                  self.board[row][column] = player
                  if self.check_winner(row, column, player):
                      self.winner = player
                  self.current_player = 3 - self.current_player
                  return True
          return False
  
      def check_winner(self, row, col, player):
          directions = [(1, 0), (0, 1), (1, 1), (1, -1)]
          for dr, dc in directions:
              count = 1
              for i in range(1, 4):
                  r, c = row + dr * i, col + dc * i
                  if 0 <= r < 6 and 0 <= c < 7 and self.board[r][c] == player:
                      count += 1
                  else:
                      break
              for i in range(1, 4):
                  r, c = row - dr * i, col - dc * i
                  if 0 <= r < 6 and 0 <= c < 7 and self.board[r][c] == player:
                      count += 1
                  else:
                      break
              if count >= 4:
                  return True
          return False
  
  # Test code
  board = ConnectFour()
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.move(1, 0) == True
  assert board.winner == 1
  assert board.reset() == None
  assert board.winner == 0