Avoid n^2 operation to iterate over neighbors
Error throwing is unnecessary

- I think most of this error throwing was committed
  in the past because of lack of tests when project
  was started and undefined being passed around.
  Start leaning on test coverage from now on.