Create a program that allows a user to keep track of their books.
The program should prompt the user for the following information:
- Title
- Author
- Genre
- Number of pages
- Status (read/unread)
The program should also have the ability to store this information in a structure (such as a list or dictionary) and allow the user to:
- Add a new book
- Delete a book
- Search for a book (by title)
- Sort the books by title, author, genre, or number of pages
- Update the status of a book (from read to unread, or vice versa)
The program should also be able to save the book list to a file, and load a previously saved book list from a file.
Program should have the ability to manage library clients, load and save their details to a file, and allow the user to search for a client by name, or by ID number.
Program should have the ability to track which books are currently checked out, and to whom.