First structure, constructors and basic function definitions.