Attempt at a (programmable) shot'em up game based on an entity-component-system