Adds headers where necessary to eliminate indirect includes. Also adds headers to ensure certain standard constructs always resolve correctly