Pet Clinic using Spring 4, Spring Data JPA, and JSP heavily refactored and documented