text: Title: Result model: Loudly deprecate not needed attributes and remove already deprecated ones
  Body: The result model (`robot.result.TestSuite`) got separate objects for representing control structures (`For`, `If`, ...) only in RF 4.0 (#3749). Before that control structures were modeled as keywords with a `type` attribute telling what they actually represent. For backwards compatibility the new objects got keywords specific attributes like `name`. These attributes were deprecated from the beginning and it's not finally time to remove them.
  
  This change will require changing our log file generation code, because it handles control structures as keywords, but that's not too big a problem. The change obviously affects all external tools handling control structures as keywords as well making the change backwards incompatible. We couldn't do it in a bug fix or even in a feature release, but doing it in a major release ought to be fine.
  
  ---
  
  **UPDATE:** It turned out that we hadn't properly deprecated all the attributes. Some only used our custom `@deprecated` decorator, but the decorator didn't do anything. Instead of removing these attributes, we decided to change the decorator so that now there's an actual deprecation warning. Those attributes that already emitted deprecation warnings were removed.