mostly completed the world object, only have to finish the load method