make submodules non-public
consistent defaults for walk, walk_depth

I can't see any reason for these not to both be True.

issues #38 and #19