Introduce set methods to replace values of JsonArray and JsonObject

* JsonArray.set( index, value ) replaces the element at the given index
  in the array.

* JsonObject.set( name, value ) replaces the member with the given name
  in the object. If the object contains multiple members with this name,
  only the last one is replaced. This behavior is consistent with get()
  and remove().

Fixes #14