(fix): make config extended deeply

Config should have deep comparison so that sibling properties aren't lost
when overriding another property.

No breaking changes in this commit.