Define an abstract interface to access hardware.

For non-virtualized VHAL, VHAL would use a VehicleHareware
implementation in the same process. For virtualized VHAL, on
android side, a VehicleHardware implementation acts as the client
to take with a GRPC server in another VM. That server uses a
VehicleHardware implementation underneath.

Test: Local build.
Bug: 199453627
Change-Id: I34512fad44aa4f69832d147d2c4ef4221e53dc4f
2 files changed