Mild refactor of erasure package.

Naming now reflects the idea that multiple types of erasure can be
included. Additional error checking has been added. Unneccessary error
checking has been removed (unnecessary becaues the variable types were
changed to more restrictive types). The many line merge sort was
replaced by 15 lines of code that perform a much simpler and O(n)
collapse sort.
Merge pull request #171 from DavidVorick/review

Mild refactor of erasure package.