iOS: animate the custom buttons used for the iPhone build
iOS: attach the slider to the toolbar differently for iOS 7

Under iOS 7, the slider becomes inoperable when included a toolbar
item in the standard way. Instead just add it as a subview, being careful
to also remove it to avoid multiple copies
Memento fixes for working with valgrind.

Remember to make blocks defined before writing/reading them.
More fixes for PDF clean.

Avoid negative indirections. Don't make indirections to objects that
aren't going to be used.

Also improve pdf-write.c so that it doesn't call renumberobj on objs
that are going to be dropped.
verify that openjpeg actually allocates data

This can be seen e.g. in:

5db811ac25ef543fd0cfa0873e155329_signal_sigsegv_c9b60f_9636_76.pdf

Thanks to Mateusz Jurczyk and Gynvael Coldwind of the Google Security
Team for providing the example files.
Bug 694851: enhance fz_load_system_font

For SumatraPDF, the following changes are required:
* fz_load_system_font is called from pdf_load_builtin_font as well so
  that Arial, Courier New, etc. can be loaded from the system instead
  of their Nimbus replacements. In order to distinguish between calls
  from pdf_load_builtin_font and pdf_load_substitute_font, an
  is_substitute argument is added.
* fz_load_system_cjk_font is added and called from
  pdf_load_substitute_cjk_font so that a better replacement font can
  be loaded instead of DroidSansFallback.
* Both fz_load_system_font and fz_load_system_cjk_font return fz_font*
  instead of fz_buffer* so that implementers aren't required to load
  fonts into memory (SumatraPDF uses fz_new_font_from_file for system
  fonts).

In addition to that, fz_load_system_font_func is renamed to
fz_load_system_font_funcs since it now accepts two functions, and the
PDF_ROS_* constants are renamed to FZ_ADOBE_* (collection names aren't
passed as const char* so that implementers know which collections to
expect). For convenience, fz_load_*_font also never throws since
currently all callers have further fallbacks available.
Bug 694890: Solve valgrind issues/SEGV due to use of invalid pixmap

fz_draw_clip_text changes the value of 'state' during a loop. The
'if (glyph)' part of the loop assumes that it points to gstate[top-1]
where the 'path' part of the loop changes it to point to gstate[top].

If we render a "non glyph" glyph, then a "glyph" glyph, we will access
an invalid state. This can cause a draw_glyph call on an invalid
destination bitmap.

The fix is simply not to reset state.

Thanks to Mateusz Jurczyk and Gynvael Coldwind of the Google Security
Team for providing the fuzzing files.