Simplify ECS so it only manages the code.

This reduces complexity by removing management of entities and components, and "groups" of systems.
Since you provide your own entities to the ECS, you can just have two separate ECS instances to create the previous "group" functionality.
Also, since you must manage entities and groups yourself, you can make your own object pools to reduce allocations.
Add filtering on entity requirements.
Remove extra semicolon.
Add documentation and license file.