Add  prototype to scope

Watches for changes on arrays and array-like objects (arguments etc.)
Defaults to a normal watch if the value returned by the watchFunction is not an object.