Refactored definition of string out to its own struct
Removed _t from type names