gfx: Optimize Program::getHandle

Since not all drivers are optimizing GetUniformLocation, gather all
uniforms after program is linked manually.

Additionally we can now gather uniform block indices in the same table
that fixes a similar performance issue with GetUniformBlockIndex.
Add CPU frame time statistics, use faster Program::getHandle for uniform blocks
Separate graphics data creation timer from physics data creation
tools: Add forgotten DLL