Add support for watchify

Previously Jadeify only registered the required Jade file, not allowing watchify to rebuild or cache changes to the Jade dependency tree.  This modification uses the Jade parser to create an array of the dependency tree of a required Jade file and registers its dependencies as "file" events for browserify and watchify.
Use compileClient directly since we upgraded minimum Jade
Don't override compileDebug default

I don't remember the original reason for doing this, if there was one.
Minor code cleanup
Use promises to reduce callback boilerplate
Clean up metadata
Update dependencies
Fix for options-from-package.json with new browserify versions

They seem to pass _flags as an option for some reason, starting with version 5.
Version 3.0.0