refactor bullet to use velocity trait and refactor other traits