Rename locate-figures to extract-figures.py
Refactored core logic into a feature_extraction module

This will make it easier to start integrating this into larger tools
and to improve the way filters and other processing details are
configured
Library code only logs
sanity checks
extract-figures: simpler file I/O error reporting
extract-figures: basic overlap filtering

This is a naive O(n²) test but n is rarely out of even single digit
range so simplicity wins…
extract-figures: optionally save JSON file with extract information
extract-figures: support for loading URLs directly
Always open images as color

This is slightly wasteful for source B/W images but it avoids future
bookkeeping when we want to draw colors on the output