Many things

1. Create GC static class for easy access to GameController
2. Change type of Communicable method parameter to int and create
EngineID enum class for its ID
3. Remove "return con.send..." and "return con.get..." in
GameObject.send and GameObject.get for preventing unnecessary stack
trace and invalid access
4. Change GameLog parameter for effective use