Remove private headers from public headers.

Some private headers were included in the public headers although they
were not needed. This caused the programs using the library to not
compile if they only used public headers. I removed unnecessary includes
in header to the implementation to reduce the dependencies.
fix typo in xml file