Initial commit of procedural model and system for entity-component model.
Can create a component with arbitrary properties.

TODO:
add more component types and systems
generic way to chain systems
unit tests
refactor
make it in a more functional style