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.
Merge branch 'kovidgoyal/master'
Merge branch 'kovidgoyal/master'
Strip spaces off of function names before looking them up. They shouldn't ever be significant.
Implement enforcement of unique custom template function names.
Merge branch 'kovidgoyal/master'
Merge branch 'master' of https://github.com/cbhaley/calibre

Enforce global uniqueness across libraries for user defined template
function names, this will allow the sue of multiple libraries in the
same process.