fix various init order problems wrt world, e.g. us needing a player obj

first to give to the world (in client mode), but of course world and
thus the entity manager stuff is not valid that early on.

so move stuff out of the ctor of world, into initServer, initClient,
one is called when in the server (previously they were if's) so this
cleans that up as well.

initClient will create the renderers and such, given the player object
that is passed in (and valid!)

initServer will load the world, etc. only applicable to server
oops, don't forget to assign mainplayer to m_mainplayer in world initClient