Provider ability to restrict declared(params) to local endpoint

#503 (which has been pulled) changes the default behaviour of `declared(params)` to return all params from the current endpoint and containing namespaces. 

This PR provides the ability to restrict that to the local endpoint (effectively the previous default behaviour) via an option:

`declared(params, restrict_local: true)`

This is particularly useful for endpoints which create/update resources.

I think the current default (i.e. with #503 pulled) is correct. i.e. one should have to specify `restrict_local` to only consider params defined on the local/current endpoint, hence this PR. Arguably the ability to restrict should have been included in #503.

Thoughts?

I can updated the `CHANGELOG` if we are comfortable.