fix Patch cache in extract_patches()
make navigation classifier persistent
new background detection based on horizontal lines
support older NumPy versions
gracefully handle scikit.learn ImportError
show exceptions during PDFInfos extraction
implement XeLaTeX workaround for "embedded" .mngs

Obviously, there is a problem with the bboxes of the \hrefs on images when using xelatex; this is an ugly workaround that at least works for boxes smaller than 1x1 and thus should not hurt in other cases.
expand rendering code -> old/new more symmetric
move hyperlink rect code into conditional
indent borderItem.setPen() for consistency
rename keys and items to (key, item) consistently
fix customItem key (overwritten in inner loop)
fix load_classifier error message (was '%s')
introduce layers (not much used yet)
use layer for parentItem assignment
manage (layer, item) pairs throughout
separate animations for each layer
after animation, reset previous parents (layers)
assertion triggered, revert parentItem change
fix key of custom items