Bug 963917: reduce Gallery memory use (and fix leak) while scanning

force software canvases for thumbnail and preview creation with willReadFrequently

Free canvas memory after creating a thumbnail

Make sure our thumbnail blobs are file-backed not memory-backed

update mediadb docs
(cherry picked from commit 4b5eaa4a2823d8961b80a3b975b1eeed92b9fcb7)

Conflicts:

	apps/gallery/js/MetadataParser.js
	apps/gallery/js/gallery.js
Merge pull request #16149 from davidflanagan/bug963917-3

Bug 963917: reduce Gallery memory use (and fix leak) while scanning r=dkuo