Add ability to create a composite column containing the virtual libraries that the book is a member of.

Intermediate commit -- still testing
Merge branch 'kovidgoyal/master'
Merge branch 'kovidgoyal/master'
For the virtual library column stuff: avoid using refresh when invalidating libraries.
[Bug 1200826] [NEW] Matching a library book to device search default
Merge branch 'kovidgoyal/master'
Merge branch 'kovidgoyal/master'
Back the virtual library column stuff out of this branch.
Fix case changing even when allow_case_changes=False when setting
series/tags/publisher and the value being set is the only instance in
the db. Also rationalize the way books_to_refresh works.
Basic setters API
Move dynamic method generation to class instead of object level
title and title_sort setters
More set_*() API
Show auto convert format in question dialog
Merge branch 'kovidgoyal/master'
Fix auto-conversion regression

Fix regression in last release that broke auto-conversion of ebooks when
sending to device/sending by email. Fixes #1200864 [False conversion from mobi to epub by using Tolino](https://bugs.launchpad.net/calibre/+bug/1200864)
tags manipulation API
...
Miscellaneous API
Fix img flip regression in PDF

PDF Input: Fix a regression that caused some images to be flipped when
converting PDF files that use image rotation operators. See #1201083