- fixed issue where bind point 0 was only ever bound once, which seemed to
  be causing weird behaviour on windows
- worked on figuring out bug in windows - looks like nvidia driver doesn't
  like me constantly binding UBOs to different binding points
- changes to utilities submodule
- changes for windows compilation
- fixed bug introduced in previous commit
- removed unused importants for IWindow.h header
- fixed issue with AMD driver and trying to call glMapBufferRange with
  length 0