Refactored the config merging method to be simpler and not merge arrays that are only partially associative.

This fixes a bug with the admin nav config that uses a partially associative and partially numeric array that can't be overwritten in config.