Data Structures and Design Patterns for Game Developers