#81 Generate initializers for non-reference types

Also fixed an inconsistency in the core that surfaced because of the
code generation.

Fixes #81