Adding new class files, starting to flesh them out.

Still moving code into seperate classes to keep it cleaner/more
generally applicable.  Starting to define the functions in more
general ways, so that maybe multiple ring-removal algorithms will
be able to take advantage of them.