Bugfix for issue 699 - scoped mutual methods

Hi guys.
I think I figured out how to solve #699 .
Here are changes I've made:

* change `mutually_exclusive` to work in scope
* change `exactly_one_of` to work in scope
* change `at_least_one_of` to work in scope
* all of those methods changed to work for `Hash` and `Array`
* all of those methods changed to work for `requires` and `optional` scope
* add and change specs

Thank you for the grape!
Pavel
Oh gush, I misunderstood you )) you wanted the same think as me, just another method for this. )) Am I right?