collision work

added some helper stuff, worked some logic