Rework the code relocation api

Summary: Cleanup to make it easier and more efficient to relocate multiple blocks simultaneously. For N tracelets of length L, reduces time from O(N*N*L.log(L)) to O(N.L.log(N.L))

Reviewed By: @edwinsmith

Differential Revision: D1491229