Fix bugs with pagination and displaying message when there are no books

- When there are no books in the database, pagination is shown
- If no books are found when search criteria is entered, show
information message.
Add tests

- Add recommendations_test.clj file - test distance measures
- Add users_test.clj file - test insert and delete user functions and
verify entered user data in register and login forms
- Make some minor changes
Remove core_test.clj file
Remove doc directory
Fix bugs when inserting user comment, listing books and calling
prepare-book-data fn

- In book.clj save authorId when adding user comment and rating
- In books.clj show message when there are no books in the database
- prepare-book-data fn doesn't have any arguments
Remove dbg macro from book.clj
Change extracting data process by sending agents, show processed results
on the Home page and fix bugs

- Send agent for each book
- Change index.clj to show processing data status
- Fix bug when adding rating (convert rating to Integer while
extracting)
- Fix bug with comparing strings with == 
- Change logo
Convert book-critics var to function
Fix bug with showing static book ratings
Remove dbg macro for debugging from book.clj
Do not import reviews with zero ratings and do not allow adding a review
without rating

- The worst rating is one, so do not import reviews with no (zero)
ratings
- Use trim fn to prepare book title
- Import books related to programming, change link in page-links var
- Show error message if user tries to add comment without rating
Limit number of active agents

- When number of actve agents is 50, start another group of agents and
remove imported book links from extracted book links atom.
Optimize recommendation calculation
Change footer padding
Expand the application description and add references
Format README.md file