Generate shallow paths for all children of shallow resources.

Prior to this commit shallow resources would only generate paths for non-direct children (with a nested depth greater than 1).

Take the following routes file.

    resources :blogs do
      resources :posts, shallow: true do
        resources :comments do
          resources :tags
        end
      end
    end

This would generate shallow paths for `tags` nested under `posts`, e.g `/posts/:id/tags/`, however it would not generate shallow paths for `comments` nested under `posts`, e.g `/posts/:id/comments/new`.

This commit changes the behaviour of the route mapper so that it generate paths for direct children of shallow resources, for example if you take the previous routes file, this will now generate shallow paths for `comments` nested under `posts`, .e.g `posts/:id/comments/new`.

This was the behaviour in Rails `4.0.4` however this was broken in @jcoglan's fix for another routes related issue[1].

[1] https://github.com/rails/rails/commit/d0e5963a38f931335926fa30b951cff4e0f3aff4
Doesn't this effectively disable the effect of `shallow_nesting_depth`? It's implementation is this:

``` ruby
@nesting.select(&:shallow?).size
```

Pretty sure I needed it to be greater than 1 for all the tests to pass - maybe something else has changed.