A javascript game framework