Camera2: Add SDK annotations

- Annotate everything with @NonNull, @Nullable
- Annotate a few @IntRange
- Annotate a few @IntDef
  - Most metadata enums probably canont be annotated usefully,
    since get/set() are generic and the annotation system
    can't yet manage that.
  - Plus metadata annotations need to be auto-generated anyway
- Also add explicit null check to prepare's surface argument
- Also update docs of getCameraCharacteristics to match reality

Bug: 21029463
Change-Id: Ifd81b2a782e29ad069fe25c7db4a1fda73dabcd7
12 files changed