Modified constructor: can now supply data directly to constructor.
Refactoring: removed __getitem__, which duplicated __contains__.
Changed constructor: can specify boolean grid for initial data.
Now allowing initialization via coords.
Removed extra logic.
Minor stylistic cleanup
Minor rework.
Rewrote get_num_of_neighbors to be slightly more concise.
Slightly reworked grid constructor.  Arguably more readable.
Minimized code a bit more.
Illustrating an experimental refactoring.  Not sure I like this.
Unsure, but reverting last change in favor or readability.