Added comment for structure logic.
Created enum for structures.
Many minor changes.
Moved structure enums to own directory.