#gjmsdev - Big restructure. Rewrote unit test to fit new structure.