E-book viewer: Make all keyboard shortcuts configurable

Fixes #1232019 [[Enhancement] Allow shortcut for Font Increase/Decrease in Viewer](https://bugs.launchpad.net/calibre/+bug/1232019)
Merge pull request #109 from cbhaley/master

Send the first few NOOPs more quickly. Apparently one can get lost, ...
Merge branch 'master' of github.com:kovidgoyal/calibre
plugin for amazon.ca Kindle Store
HTMLZ Output: Fix long title causing error on windows

HTMLZ Output: Fix long titles causing error when converting on windows.
Fixes #1235815 [Long titles with possible invalid chars cause errors during convert](https://bugs.launchpad.net/calibre/+bug/1235815)
Fast hardlink based cloning of book containers
Refactor for test run re-use
Remove incorrect sRGB profile
Get Books: Plugin for the canadian Amazon store (amazon.ca)

Merge branch 'amazon_ca' of https://github.com/t3d/calibre
Add test framework for book container

Also add test for container cloning
...
Fix locking error for searches + composite columns

Fix a locking error when composite columns containing formats are used
and formats are added/deleted. The error would only be triggered if a search
was previously done that looked at the formats column. Also speed up
searching a little by avoiding a full get_metadata when searching
composite columns. Fixes #1233330 [Custom column Formats error](https://bugs.launchpad.net/calibre/+bug/1233330)
pep8
ALlow using both uri: and url: identifiers to create two different links
instead of just one in the Book details panel
New icon for Tweak Book
Accept null last_modified dates from a smart device. Can happen when books are added from a scan and not matched.