Entanglement purification takes a number of noisy EPR pairs vertical bar 00 > + vertical bar 11 > and processes them to produce a smaller number of more reliable pairs. If this is done with only a forward classical side channel, the procedure is equivalent to using a quantum error-correcting code (QECC). We instead investigate entanglement purification protocols with two-way classical side channels (2-EPPs) for finite block sizes. In particular, we consider the analog of the minimum distance problem for QECCs, and show that 2-EPPs can exceed the quantum Hamming bound and the quantum Singleton bound. We also show that 2-EPPs can achieve the rate k/n = 1 - (t/n) log(2) 3 - h(t/n) - O(1/n) (asymptotically reaching the quantum Hamming bound), where the EPP produces at least k good pairs out of n total pairs with up to t arbitrary errors, and h(x) = -x log(2) x - (1 - x) log(2) (1 - x) is the usual binary entropy. In contrast, the best known lower bound on the rate of QECCs is the quantum Gilbert-Varshamov bound k/n >= 1 - (2t/n) log(2)2 3 - h(2t/n). Indeed, in some regimes, the known upper bound on the asymptotic rate of good QECCs is strictly below our lower bound on the achievable rate of 2-EPPs.