Make Restore Points smaller
Make Restore Points smaller

... by checking for not used most significant bytes in size_t objects to
store (2 groups). These sizes are then recorded to file for proper
restoring, making it much smaller on x64 architecture and usually a bit
smaller on x86 for files that should result in ~16MB total compressed
size (size_t is then dumped using 3 and 2 bytes). This also fixes crash
or error when x86 Restore Point was loaded on x64 architecture (parts of
memory mapped for size_t objects was not zero'ed beforehand, doh!). Also
don't try to restore on x86 architecture  when either of size_t in
restore point is 5+ bytes (usually that should not happen because very
big input and a lot of memory would be required).

Restore Points before this commit are incompatible.

MrKrzYch00/zopfli,MrKrzYch00/zopfli