added book

refactored some stuff to make it reusable
added /book/ details