Fix Array property duplication bug

Properties set on a server were added twice if the server was not
previously declared. For replaceable or mergable properties this had no
side effects, but for Arrays it doubled them.

Fix the bug and add tests to stop it happening again