refactored BookState and removed author's model