A lot more verbose lock debugging
Remove the unused RecordLock class
Move lock testing into the main test suite
newdb: Fix move_library() broken on case-insenstive file systems

get_top_level_move_items() was not checking that the items it returned
actually existed on case-insensitive file systems. This bug is actually
present in olddb as well.
Fix refresh() test failling on OS X because of file system resolution
Fix test failures due to file locking on windows
Fix test failure on windows because of slowness
Another test fix for windows
...
Ensure the recycle bin is not used while running tests
newdb: More efficient deleteing of multiple books
newdb: Workaround windows spinning the event loop when deleting files

Windows, being deigned by the geniuses that it is, spins the event loop
while deleting files to the recycle bin, and there exists *no other way* to
move files to the Recycle Bin, since the Recycle Bin format is not
documented or stable.

So we move only files out of the library in the thread calling
delete_books(). The files are moved to the Recycle Bin in a worker
thread. This has two advantages:

1) Faster deletes, since the main thread does not have to wait on the
Recycle Bin (some windows' installs are so badly messed up that moving a
single file to the Bin takes seconds)

2) Restoring deleted files from the bin will not restore them inside the
calibre library folder, where they become orphed. They will be restored
elsewhere.

Disadvantages:

1) If the user deletes a lot of books and quits calibre, they might not
be finished deleting on quit, this can probably be mitigated by popping
up a warning at shutdown
Jot Down by desUbiKado
Search highlighting for the grid view
Ensure that text is anti-aliased in the grid view
Add an icon for the sort by context menu entry
Update Telegraph UK