more generalized velocity, need to fix enemies

their gravity needs to get reset on collision with wall