Prevent adding duplicate books.

1) Add a new field containing the sha256 of the file.
2) Hookup a reciever to generate the sha256 everytime we save a new book.

The modle should now give out an integrity error if we try to add a duplicate entry.
Make sha256_sum generation memory efficient.
Don't stop adding books just because of a duplication error. Instead just show a message and move on to the other books.
Rename the callback function to a more sensible name.
Override the save method instead of using signals.
Merge pull request #30 from lionaneesh/more_fixes

Prevent adding duplicates to the book library.