World items

Feature complete.
Items drop into the world and are picked up by players that walk near them.
Tons of refactoring happened to make this possible.
We should try and make this data driven if possible. So something like: `var ENTITY_MESHES = {EntityKindPlayer: PlayerMesh, EntityKindWorldItem: WorldItemMesh}`;

Also, why does the PlayerMesh not require the kind nor halfExtents, but WorldItemMesh does? That seems funny.