gitignore: add Idea's *.iml files
config-loader: deeply merge Array and Object vals
compiler: improve merging of Arrays and Objects

Add more unit-tests to cover various edge cases. Fix issues discovered
by these new tests.