GROOVY-6080: IncompatibleClassChangeError: the number of constructors during runtime and compile time
   * switched to a hash based approach
   * kept the old algorithm for binary compatibility with previously generated Groovy classes