Fixed collision detection with boundaries, implemented better shooting