py: Correctly set sys.maxsize value for 64-bit.

Type representing signed size doesn't have to be int, so use special value
which defaults to SSIZE_MAX, but as it's not defined by C standard (but rather
by POSIX), allow ports to set it.
modstruct: Implement 'O', 'P', 's' types for packed structs.

This is required to deal with, well, packed C structs containing pointers.