Framework for building games