Added grid_flow_directions, disabled some doctests.

Added
-----
* New function grid_flow_directions calculates flow directions on a
  grid. This is a simplified version of the more general
  `flow_directions` function.

Changed
-------
* Turned off some doctests in `flow_directions` as they were not working
  and I couldn't figure out how to fix them. Perhaps they were even old
  tests that aren't even supposed to work any more.
Merge remote-tracking branch 'upstream/master' into fix-unit-tests
Fixed some broken doctests.
Skipped doctests that weren't really tests.

Fixed
-----
* Added SKIP directive to examples that are not really doctests, just
  examples that don't actually work.
Changed node_has_boundary_neighbor

Changed
-------
* node_has_boundary_neighbor now return True if a node has a neighbor
  that isn't a core node or is missing a neighbor. That is, has a
  neighbor with BAD_INDEX_VALUE. Previously, BAD_INDEX_VALUE nodes were
  ignored.
Changed to better compare BAD_INDEX_VALUE.
Merge pull request #50 from mcflugen/fix-unit-tests

I think all unit tests and doctests should be working now (this fixes #11).

A couple notes:
* I commented out some doctests in the function `flow_directions` of `flow_direction_DN.py` that I wasn't sure how to get to work (@SiccarPoint?).
* I skipped some doctests in `generate_overland_flow_DEM.py` that (I don't think) were really tests but just examples that weren't really intended to work by themselves (@jadams15?).