no need to use placement new on rotation.cpp
uint16 input parameters in allocator replaced by oveflow checks
benchmarks