Track changes to options more deeply

Traverses array members looking for changes
@fjarrett If you're talking about `$deep`, i used it so i can control how deep should i check for changes in the array. 0 stands for the first level only ( do not check children at all ), 1 the first level of children, etc .. for options that are stored hierarchically `<input name='plugin_name[section][field]' />` .. and since the function is calling itself, i need to decrement the value on each call.