Renamed a bunch of functions.
Changed the signatures of interleave() and deinterleave()

But I have not updated the implementations yet!
Updated interleave() and deinterleave() implementations.