object-based case class pickling works
everything passes except for recusive macro =(