Vikings to hire Kevin O'Connell after being turned down by Jim Harbaugh