Some minor fixes

I add some preprocessor checks to use c++11 libraries if available on clang.

Also, the ComponentManager was shrinking the component vector in some cases (e.g. if a component of type T was added to an entity with id '40', and then a component of type T was added to an entity with id '2', then the vector would be resized down to 2, and the component for '40' would be destructed).