Windows compatibility fix
Added Code::Blocks project

Using Code::Blocks and MinGW will not only give us access to the newest
C++ features, but will prevent us having to make constant compatibility fixes due to varying compilers.