Reads the contents of the GPFile and returns the contents as a string (assumes UTF-8)

def read(self):
        """
        Reads the contents of the GPFile and returns the contents as a string (assumes UTF-8)
        """
        with closing(self.open()) as f:
            data = f.read()
        return data.decode("utf-8") or None