Fix for aggregate initialization in optional and variant components

Closes #23