init
init(args :: term()) :: {:ok, state} | {:ok, state, :hibernate} | {:error, reason :: any()} when state: any()