Use actual kernel headers and display-caf paths if defined

As well add in fail safe for prebuilt kernels

Based off http://review.cyanogenmod.org/#/c/54193/ by dhacker

rebase

Change-Id: I7338867f6eb4d88b33b610a2b2f93280ed6e71bc