Changed RootSystem to use functional dependencies for the root type to allow SpinSystems. Removed SubRootSystems and Weyl types as large changes needed.
Generalized determine so it converts to basic roots internally. To simplify type signatures the root type of a root system must be a root.
Implimented SpinSystem
Added test that spin produces the correct semisimple algebra.