Allow the Pointer to relocate relative to EOF

Some binary file format have a fixed length footer at the end of the file, which would then contain the relative or absolute offsets of other structures.

In order to parse the footer, the first thing to do is to relocate at a position relative to the end of the file, in order to read the footer.

Without knowing the actual size of the file, this is impossible to do if one can only move to an absolute position from the beginning.

This change allow to specify a negative position, which will be considered as starting from the EOF (the same way as python array indexes).