extend() correctly preserves config nodes (fix for #8)

Recursively copy config when extending.