fixes #6820 - apipie-bindings should enforce required params, BZ 1116803

- [x] validate presense of params (nested and un-nested)
- [x] do not rely on `gettext`
- [x] refactor `Param#tree` and `Action#tree` into one? ([discussion](https://github.com/Apipie/apipie-bindings/pull/12#discussion-diff-15759442))
- [x] write a deep diff for `Hash` ([discussion](https://github.com/Apipie/apipie-bindings/pull/12#discussion-diff-15758740))
- [x] tests!
- [x] squash commits once tests are green
I'd remove the '?' as it does not return boolean