updated scala version, added shapeless helper