Make Properties objects internally immutable

This prevents ConcurrentModificationExceptions if the Props object is used elsewhere outside the Analytics library as the Flusher is serializing the Props.

This solves at least one root cause of https://github.com/segmentio/analytics-java/issues/31