Game Programming Patterns - a review