finished add new book function