fix NDK List<T>

The NDK backend supports List<T> by treating it like an array. But
it's been ignoring annotations attached to List.

For example, `@nullable List<String>` was converted to `String[]` and
then translated to `vector<string>`, which should be
`optional<vector<optional<string>>>`.

Fixes: 203144721
Test: aidl_unittests
Test: aidl_integration_test
Change-Id: I5b8099db30fbbf41936aad7f58da25b74dcc0191
6 files changed