Minor log message changes
Refactor: begin collecting little algorithms

Basic geometric and numeric stuff belongs in lib/.
Backgrounds: be less fussy, use PyGI syntax.

* Allow JPEG images to be used in the background library
* Walk background library directories recursively to find candidates
* Permit background images to be used which have alpha
  - works by compositing onto a black background
* Allow images that aren't a strict multiple of the tile size
  - works by tiling and repetition up to a preset limit
  - if that hits the lcm, that's great!
  - otherwise, scale closest fit encountered down to nearest tile multiple
  - hopefully still reasonably pretty and close to the original aspect
* Project: update copyright
* Coding: use PyGI syntax
* Coding: various stylistic fixes
* UI: tweak display of the background previews
Default bg: use fallback image, no dark-theme test

Use a nice fallback image if default.png doesn't exist. We don't ship a
standard default.png now.

No longer test whether MyPaint is configured to use dark themes to decide
the default background. Not every theme will have a "dark" variant, and
some themes are dark by default. Better to not try to be too clever, and
pick a fallback colour and fallback image that works OK for both dark and
light surrounds.