add runNow() method for DelayedEntitySystem
fix memory leak when add an already existed component to an entity
Replaced NULL with nullptr.
Fix bug due to Bag grow size feature

Steps:

- Refactor Bag.grow() function
- In Bag.get(int index) function: return NULL if index > current size
Replaced NULL occurences of previous commit.
Fixed typo
Added a CMake build file
Updated CMakeLists.txt to make the project installable as a library
Made so the header files are installed to an include folder
Remove execute permissions from source files.
Downcase lib name and set to build as shared.
Add checks on compiler version to build system

Inspect compiler version number to determine if it has support for
necessary C++11 features. Emit a warning if that doesn't appear to be
the case. Set compiler flags as necessary.
Refactor the codebase

Now 100% less offensive to my delicate sensibilities.
Add suffix to debug builds
Make use of C++11 features mainline to this fork
Remove obsolete file