make PrecompiledHeader, CommunicationDefinition, implement struct more