refactor: introduce World object for handling time beating instead of each object behavior