It looks like some of the data returned by the various skills method needs unserialising. For example, from skills.learning
"giants": "a:3:{s:10:\"grendaline\";a:1:{s:7:\"primary\";s:1:\"0\";}s:3:\"mab\";a:1:{s:7:\"primary\";s:1:\"1\";}s:8:\"spriggan\";a:1:{s:7:\"primary\";s:1:\"0\";}}",