Update waiters to v2 format
Add service_name override to service_model

To handle cases where endpoint_prefix != service_name, as happens
with emr, ses, etc.
Always use service_name for client models

The endpoint prefix shouldn't be used, sometimes botocore
changes this to a different value (ses vs. email for example).

Also added an integration test to ensure we don't regress on this
as well as the usual unit tests.
Add pathAll and pathAny