DataType String no longer has the Width in it.
When data
StCase now working
Added StLoop and StFor for monad Definition.
Changing the SymbolInfo
Created a for DataType
Created a for Access
Created a for Identifier (needed, is just one line)
Created a for Expression
Renamed Language.hs to Program.hs
Removed all Data.Typeable and Data.Data imports and uses.
Renamed SymbolInfo to Symbol everywhere.
Created a data SymbolCategory to differintiate CatFunction, CatType and CatInfo.
Expression.hs now has the Access data and everything related to it.
Created a data Signature to contain paramteres and return type.
Now we ALWAYS have the 'OutOfBounds' scope, with all language definitions in the stack.
No longer parsing types one by one, we parse everything as 'SomeType', and then we'll find out what type it really is.