Refactoring and Writing Unit Tests, Test Based Development

We have started refactoring our code to help abstract parts of our code
that are confusing and could be done way better and cleaner. We are also
writing all of our code with Unit tests so that we know that for sure each
individual method works so that we can put them all together. All of the
tests for a given method will be writen before the actual method it's self.
The biggest change is that we now are writing a TransitionTable class that
will contain any important methods that manipulate the transitionTable in
some way. We currently have some basic methods for the Transition Table
class.