todo
- state management
- render
- collision detection
- rigid body interaction
- texture loading
- sprite animation
- map loading
- menus
- save/load state
- audio
- socket multiplayer
ideas
- add impulses and then average after collision resolution
- sleep entity
- entity z-index
- entity elevation