Be able to fire at arbitrary points within grid
Add ability to shoot at arbitrary points outside grid space
Refactor, extract shooting into handleShootEvent