better handling of creation of books by using actual view model + validation on client