Scala case class serialization using Miles Sabin's shapeless library