Removed the stl dependency! (finally!), decided to use our own format instead of freeimage (really just an FIBITMAP copied into a binary file so it should be easy to convert).  Made a replacement for std::atomic using gcc's builtins.  Misc. warning fixes and modifications.
Fixed the atomic store since we don't need writes to be atomic; we only use it to initialize stuff from a single thread.  This behavior is unsafe and temporary (until i fix the atomic version) and should be documented.  Also, there's still a link error, it's just minor.