Bug 865750 - multilevel_visibility_monitor.js

[Bugzilla](https://bugzilla.mozilla.org/show_bug.cgi?id=865750)

A rewrite of visibility_monitor.js able to monitor nodes at any depth, not just direct children.