Let viewsets specify their regex

BREAKING CHANGE

This patch allows a viewset to specify the regex that's used for routing.

It also changes the router's behavior when `trailing_slash=True`. It will no longer adjust the lookup regex to accept period characters. To obtain the old behavior, the specify `lookup_value_regex = '[^/]+'` on the viewset.