Improved moveToAI

Just pick the best path to target. Needs bug testing
Change Room constructor

No longer need the world class. The HashMap all items and players is now
static it can be access any where in the code
Change Vision of NPC and Player. Add a 2nd 2d  array

Added 2nd 2d Array in room to represent Items that the character can
walk over (Still in work). moved the NPC and Player  factorys. I did
this so I could change the visibility of the Player and NPC  class
constructor to only the packet, to stop them been create wrong. In order
to make one you need to use the factorys. I also add a Item Factory as
well that works the same. all a linked door