adds custom get function for special get element from tuple by type cases
adds basic system from which all systems have to be derived from.
It provides the basic mechanisms to store and handle components per entity.
changed basic system destructor to pure virtual
Merge branch 'util' into ecs
eliminates compilation error caused by std::move calls in basic_component
add premake build script
add generated makefiles to .gitignore