Add customizable api docs views

This branch allows applications to specify custom arguments to the ```add_view``` call for any of the */api-docs* views. For example, an application can now supply a view predicate to make the view only accessible to certain requests (such as those coming from a certain range of IP addresses).