4-1-stable allow string based keys for nested associations

Fixes issue #15671
    
This allows both strings and symbols to be accepted as keys in a nested association by adding `to_sym` to where strings were being rejected.

Originally we attempted to fix this issue the same as it was "fixed" on master, but that led to other issues of backwards compatibility. We decided to fix this problem on 4-1-stable by using symbols and not strings.

@senny and @matthewd this fixes only the issue mentioned above on 4-1-stable. I haven't started working out how to fix master yet, I've been quite busy. 

I also added 2 tests that ensure that both strings and symbols work in nested associations.

Thanks!