Support for 'dependencies' values.

The 'dependencies' rule now also accepts a dictionary. When
dependencies are provided as a dictionary not only dependencies
must be there, but also any of their allowed values must be present.

Closes #61 taking an alternative yet similar approach.