improve includes in headers and handling of namspace std