Design of class components for laparoscopy surgery simulation with haptic elements: a case study of sPLaSH