add concept of a ship being submerged

fix sub collision with other ships
refactor invalid position exception
check to make sure ship is placed in board bounds