Cleanup.
Made getNextFreeID protected to let extending managers use it as well.
Fixed deserializing issue when entity was not spawned.
Changed the way how entities get spawned.

The way you use it stays the same, but it should prevent issues such as
spawning entities in chunks which are not loaded and
ConcurrentModificationExceptions. Whenever a entity gets created it now
gets checked if the chunk is loaded or not. If it isn't, the entity
gets added to the entitychunkloader's queue, like entities which's
chunk got unloaded. The cycling through the entities to spawn is now a
sync task to ensure that it won't get interrupted.
Fixed not saving unloaded entities properly.
Made YMLSerializer a single entity serializer
More javadocs.