add RepeatedField implementation backed by ArrayList
add type checking on assignment