Default namespace option

I've seen that  #617 doesn't work when models are namespaced.

If you're namespacing controllers AND models, AMS will look for serializers with both concatenated namespaces: 

`MyCompany::Product` rendered in `V1::MyCompany::ProductsController` will look for `V1::MyCompany::MyCompany::ProductSerializer` instead of `V1::MyCompany::ProductSerializer`.

Handling any namespace layout would be very difficult to handle but I've found a simple workaround: allow to set the namespace in `default_serializer_options` in the controller, and propagate it to associations.

In my example, I just have to add this in my controller:
````
def default_serializer_options
  {namespace: V1}
end
````
That way, only `V1::` is added before my model class.

In my case, I just set it in my `V1::BaseController` and all V1 controllers use the same serializers namespace.

For tests, I've just reproduced namespace tests and set the namespace option instead of using the controllers namespace lookup. There could be many more namespace layouts to test...

Maybe @konukhov should also take a look at this PR since it's mailny based on his work.