Restructured include directory and made the library completely independent of libcm