add tiny xml support, add hal shaders, update parser