Unify namespaced routes syntax

Until now there was two ways to namespace a route:

```ruby
router = Lotus::Router.new do
  # First way
  get '/login', to: ->(env) { ... }, prefix: '/backend'

  # Second way
  namespace 'dashboard' do
    get '/users', to: ->(env) { ... }
  end
end
```

In the example above, the available routes would be: `/backend/login` and `/dashboard/users`.
Theoretically they are equivalent, but @janko-m [discovered some inconsistencies](https://github.com/lotus/router/pull/24) for the first syntax, which was poorly covered by myself. :sob: This made me to reconsider this feature.

Because I want to simplify both our and developers lives, I want that Lotus has only one way to achieve things. 
I'm suggesting to remove the `:prefix` syntax for the following reasons:

  1. It doesn't work.
  2. To make this to work would require an effort and requires to add more code to the inner router and resolver.
  3. Namespace works properly and keeping this feature allowed to not add code :v: 
  4. Simplifies routes definitions. Eg. `Lotus::Router#get` will have **one less** option. Easier code, easier to remember :+1: 
  5. Namespace encourages DRY code. Instead of repeating dozen times `:prefix`, developers will have only **one** `namespace` block where to define the nested routes.
  6. Code blocks will make easier human recognition in huge routing files. Instead of seeking for dozens `:prefix` options one `namespace` block will help to keep all the routes together.
  7. It's not used by developers (see below).

This pull request will remove the code that supports `:prefix` without any deprecation.
This syntax was present in the first release of  `Lotus::Router`, which has been released on Jan 2014. Until now, nobody reported this issue, except for @janko-m who is studying the code of the framework.

We're currently on a version under the 1.0. According to SemVer 2.0 we are allowed to make breaking changes at this point in time.

Ref #24
@janko-m I'm impressed, excellent catch! :+1: 
I was considering to do that, but the resolver would loose the power to combine those things.
Suppose to have a third part resolver, they will receive the joined name, without the possibility to manipulate raw informations.

Please remember that this is "loading time code", not "runtime code". An improvement in this point would eventually reduce the loading time of an application. But it's not even noticeable, because in the current implementation we have an `if` statement in `Resolver#find` vs the inline merge that you are suggesting. Both those instructions are ran `n` times (where `n` is the number of routes) only when the app starts.

The code may lose flexibility and it isn't a perf boost. It looks like a premature optimization.
I'd suggest to leave it as it is for now.