Used forward declarations to fix clang and gcc 4.7 stricter template function reference checking

clang and gcc 4.7+ *really* care about function declarations and rather than decoupling and inserting declarations in between their implementations here I just declared all the rapidxml printing internals at once. Building then continues as desired.

Tested to work on linux with clang 3.4 and gcc 4.7, OSX with clang 3.2 (Makefiles and XCode) gcc 4.2.

PS. I noticed a fix like this was in the develop branch but it still failed to build, I'd suggest merging this pull with master as otherwise it all builds quite nicely and I wouldn't want people to get turned off Horde3D because they have a newer compiler.