Dixon's Algorithm: Asymptotically Fast Factorization of Integers