Add skeleton for multihal 2.0

Creates a basic set of structures needed to implement multihal 2.0.
Descriptions of each are as follows:

HalProxy - Main point of contact from the sensors framework. Implements
the ISensors interface and will implement several callbacks passed to
sub-HALs in the future

SubHal - Contains interface that sub-HALs are expected to implement in
order to be loaded properly by the HalProxy. Also contains definitions
for various callbacks and classes that will be fully implemented by the
HalProxy.

service.cpp - contains the main function that is reponsible for
initializing the HalProxy and starting the thread pool that will handle
communication between the HalProxy and sensors framework.

Bug: 136511617
Test: compile for now. Stubbed out sub-HAL to be added in a followup CL
    to facilitate testing before a vendor implements the subHAL
    interface.
Change-Id: If663159d444d721a0a65ebe49dd92e8924bbb3a3
8 files changed