Flexible Entity

This parses the entity names to be more meaningful and support multiple nested module and class names.

One of the fun things of Grape::Entity is that it'll apply itself automatically when you use `present` if a class has an Entity like:

```ruby
class User::Entity << Grape::Entity
  # expose...
end
```

That, in grape-swagger will return an Entity of type "Entity" which isn't really useful. With the changes, it returns "User".

Also:

```ruby
class Some::Thing::Entity << Grape::Entity
  # expose...
end
```

Would return "Some::Thing". Far better, no? (instead of "Entity")

I took the liberty of adding an extra test for this.