Support builder class for an immutable parcelable

As-is: An immutable parcelable's constructor needs every field as
arguments. It can break build whenever a field is added
To-be: Builder class is provided, so it doesn't break build even though
a field is added. And also, it respects a default value if the field is
not set.

In addition, check the duplicate field name after capitalizing the first
letter because of setter name.

Test: atest aidl_integration_test aidl_unittests
Bug: 161506914
Change-Id: Icf45d67f2c1c66af89d8eb80ea0f71120ced5e0d
6 files changed