Native layoutlib for Linux and MacOS

This makes layoutlib use the native code from the framework through
loading the libandroid-host library.
This also creates a native helper library liblayoutlib_helper that is
used to define constants and methods missing from libandroid-host.
FIXME: Remove the need for duplicate code inside properties.cpp.

Bug: 117921091
Test: layoutlib tests
Change-Id: I4b1459f6f2a52fcce2a7bc5b955a880783e45c2d
145 files changed