Squashed commit from CM

Allow a device to generically define its own headers

Change-Id: I41b62668b60e3f62a6ebd3738d8d2675103a81e6a

build: fix target header overlay

Change-Id: I489b2aab6dbacd9122d834f85e07b63ed1271f07

Slightly modified for lollipop