add template parameter to basic system which makes the handle type of the components a system stores generic
return pointer to created component
remove some redundant stuff in basic system and add correct working size function and capacity function with template parameter, which are just wrapper for the underlying std::vector functions in the component tuple
rewrite asset manager
rewrite mesh compiler. todo write to binary to file