1. For field `protocol` in a struct:
2. Swift allows any keyword to be used as identifier if you escape it, so lang_keywords() should return empty set.
Adjust keyword test appropriately.
3. kewords_(lang_keywords()) initialization in t_generator.h does not work. Virtual method call from base class constructor. This mechanism is used for Python and Swift. Fixing this issue changes list of reserved words for Python and Swift (breaking change).