Cleaned up the spec array builder. Built a spec buider factory and added a spec xml builder
Refactored a lot of classes. Removed some unneeded exceptions and cleaned more code up