Python compiler generates invalid code for GPT sample
https://formats.kaitai.io/gpt_partition_table/python.html

The generated code for **entries** contains the following

```        
def entries(self):
  ...
  io = self._root._io
  ...
  for i in range(self.entries_count):
    self._raw__m_entries[i] = io.read_bytes(self.entries_size)
    io = KaitaiStream(BytesIO(self._raw__m_entries[i]))
    self._m_entries[i] = self._root.PartitionEntry(io, self, self._root)
```

The local declaration of io overwrites the one declared earlier in the function causing it to fail on the second loop of the function. This file demonstrates the issue: [ksc-python-gpt.zip](https://github.com/kaitai-io/kaitai_struct_compiler/files/2793393/ksc-python-gpt.zip)

Fixing it locally works by renaming `io` to `_io`
```
    _io = KaitaiStream(BytesIO(self._raw__m_entries[i]))
    self._m_entries[i] = self._root.PartitionEntry(_io, self, self._root)```
```