Lighting reads blocktypes only for blocks under heightmap.

This should theoretically speed it up, since less data is copied back and forth.

Also implemented a possibly more cache-friendly blocklight starter algorithm (PrepareBlockLight2()), is disabled by default, needs perf testing.
Fixed member construction order.
Fixed link errors
Implemented Allocation Pool
Added callback for stopping starvation mode
Both SetSpeed functions are now overridden by cPlayer
cPlayer overrides the SetSpeedXX functions
Fixed compile error
cEntity::SetSpeed(a_Vector3d) isn't virtualized anymore
Added doxy-comments
Merge branch 'chunksparsing/structs' into AllocationPool
Use placement new to initalise objects
Implemented Allocation Pool use by cChunkData
Fixed bug in freeing NULL pointers
Merge branch 'chunksparsing/structs' into AllocationPool

Conflicts:
	src/ChunkData.cpp
	src/ChunkData.h
	tests/ChunkData/Coordinates.cpp
Fixed bad merge
Added Arrow- and FireCharge-Dispensing to DispenserEntity.
- Added support for more types of projectiles in the Dispenser
- Improved the method of spawning projectiles in the world
- Added another method for spawning the projectiles
- Fixed the ampersands and asterisks to fit the format.
- Fixed the method "SpawnProjectileFromDispenser" to use CamelCasing.
- Implemented vertical dispensing for projectiles.
- Fixed some terrible commit issues on my side.
- Fixed an issue where dispensers would only shoot arrows (appearantly
some commits didn't come through)
- Cleaned up the code according to suggestions.