Add immutable collections.

See immutable/Immutable.md for documentation on how the immutable
collections are designed and supposed to work.

Bug: 182523293
Test: build
Change-Id: If1615aae360ddfce979a2906ec49133d1fa1e157
11 files changed