Responds 404 if nested conditions are unmet.

Before:

```ruby
Cuba.define do
  on get do
    on root do
      res.write("unmet")
    end
  end
end

# GET /notexists => 200
```

After:

```ruby
Cuba.define do
  on get do
    on root do
      res.write("unmet")
    end
  end
end

# GET /notexists => 404
```

This solves the "tricky" behaviour explained in #27.
Oops bad push ... I will close this PR, the changes are in this [branch](https://github.com/soveran/cuba/tree/404).