Changed MarkerClient to support multiple markers at a time

I've updated the MarkerClient to support multiple markers at a time. The markers are stored in a map, indexed by their id, so new markers with the same ID should overwrite existing ones.