add keepVelocity option
start working on permission system