Nested case class conversion with nice error messages.

Fixes #58
Review by @gzm0 @hubertp

I object to this democratic vote :) Why make something slower and generate more code?